Y a-t-il un VRAI avantage palpable à utiliser la bibliothèque hébergée Google jQuery? Ou devons-nous simplement le télécharger sur notre serveur?

Quelle est votre opinion à ce sujet?

Commentaires

  • Un simple google la recherche aura fourni la réponse …

Réponse

Lutilisation dun CDN externe présente deux avantages majeurs comme Google pour héberger jQuery:

  1. Cest plus rapide. Ce sera certainement être plus rapide que votre site, et probablement plus rapide que tout CDN que vous avez configuré vous-même.
  2. Il se peut que soit déjà mis en cache . De nombreux sites font également référence à jQuery sur le CDN de Google, donc s’ils ont visité un autre site avant le vôtre, ils n’auront même pas besoin de le télécharger.

Potentiel inconvénients:

  1. Le domaine peut être bloqué (cest assez courant dans des endroits comme la Chine ). Vous pouvez résoudre ce problème en ayant une solution de secours locale ( voir he re for how ).
  2. La fragmentation des numéros de version est assez élevée, donc les visiteurs de votre site peuvent avoir de nombreuses versions différentes en cache, mais pas celle que vous avez référencée ( voir ici pour quelques statistiques récentes ). Cependant, il ne sagit que dun problème lors du chargement de la première page.

Commentaires

  • Pouvez-vous publier une référence pour savoir comment configurer un local de secours?
  • Comme Zistolen la déjà souligné, un autre avantage est quil téléchargera en parallèle à vos sites Web dautres ressources. Vous voudrez peut-être ajouter cela également à cette excellente réponse.
  • Ce ‘ est un peu trompeur. Les navigateurs téléchargent les ressources en parallèle, quel que soit lendroit où elles sont hébergées, mais il existe une limite au nombre déléments quils ‘ téléchargeront à partir du même hôte à la fois.
  • Jai sauté cela car honnêtement il ‘ nest ni ici ni là – le fichier peut être téléchargé en parallèle mais il ‘ est également un Recherche DNS. De plus, quelle que soit la différence de temps que lun ou lautre fait est de toute façon négligeable.
  • Assez juste. Mais sur les connexions rapides, cela ne peut-il pas se traduire par un temps de chargement total plus rapide, car plus de  » pipe  » peuvent être utilisés?

Réponse

Autre inconvénient:

Lutilisation dun CDN permet à lopérateur du CDN de suivre les visiteurs des sites. Cest pourquoi ils ne coûtent pas dargent.

Commentaires

  • Suivi sûr, mais pas des visiteurs: les deux jquery ‘ s own et google ‘ s jquery CDN sont hébergés sur des domaines qui ne ‘ t ni nutilisent de cookies (cest probablement aussi une optimisation des performances), et il ny a ‘ aucune information vraiment identifiable dans la requête. Le fournisseur CDN peut avoir une idée des adresses IP et des statistiques sur les chaînes dagent utilisateur et les référents. Ceci est probablement utile, mais ‘ ne représente pas en soi un risque énorme pour la vie privée (si ces enregistrements étaient corrélés avec une autre base de données – disons des annonces personnalisées diffusées à des moments similaires – alors peut-être que
  • Je pense que lon peut tenir pour acquis (dans le cas de google), que les données sont corrélées avec dautres bases de données, puisque presque tout le monde utilise google pour rechercher tout le temps. Même chose avec les polices google: jai récemment essayé dauto-héberger les polices sur un serveur, mais jai découvert que cétait très difficile de le faire. Google ne linterdit pas (Open Source), mais ils ne ‘ t vous fournissent pas les fichiers prêts à lemploi: vous pouvez soit les compiler vous-même (mais il y a no makefile), ou vous pouvez falsifier des requêtes aux serveurs qui sont utilisés pour les livrer normalement. Les deux ne sont pas réalisables pour un non-technicien.
  • Peut-être. Je nai ‘ aucune information interne, donc cest difficile à dire avec certitude ‘. Je ‘ je suis certain que ‘ sera bogué et aura des lacunes importantes, cependant: la plupart des endroits où jutilise Internet sont NAT, et plusieurs ont pas mal dutilisateurs avec des machines similaires (probablement des chaînes UA identiques) – il est ‘ impossible de savoir quelle demande vient de qui. Et bien sûr, avec adsense et les boutons de partage social, ils peuvent avoir un moyen plus fiable presque toujours, donc je peux imaginer quils ne ‘ t dérangent pas. En ce qui concerne les polices – jai ‘ les avoir téléchargées plusieurs fois, donc je ne ‘ pas très bien comprendre ce que vous entendez par «difficile»?
  • Pour être clair: je ‘ supposer que la majorité des visites que vous effectuez sur le site Web peuvent et seront suivies par les grands collecteurs de statistiques en vertu de boutons de partage social (assez répandus) et publicités, qui sont à peu près partout. Je me demande donc quelle est la valeur des informations éventuellement trompeuses provenant de requêtes js fortement mises en cache – Je parie ‘, pas très, donc je suppose quils ne ‘ pas la peine dessayer didentifier personnellement les personnes utilisant le JS servi par CDN.
  • Ce nest pas aussi mis en cache quon pourrait le penser – Lors de lincorporation de polices en utilisant la manière dont google le préfère en insérant un lien CSS vers fonts.googleapis. com, chaque vue de page ouvre une connexion à google (vous pouvez les voir dans Firebug). Peu importe ‘ que ce soit mis en cache ou non. En ce qui concerne le téléchargement: pouvez-vous mindiquer un endroit où je peux télécharger les polices au format eot, woff, ttf et svg de haute qualité (mêmes versions fournies par Google, pas de convertisseurs externes)?

Réponse

Lutilisation de CDN pour partager vos dépendances sur de nombreux serveurs comme celui-ci représente essentiellement un compromis entre bande passante et latence, en supposant que vous ne vous en souciez que à propos des performances.

Je suppose dailleurs que lalternative nest pas simplement de lhéberger localement, mais de la concaténer avec une requête locale différente – il ny a généralement aucune bonne raison de ne pas concaténer quand vous le pouvez.

Si la bande passante est infinie, alors il vaut mieux NE PAS partager, car vous serez aussi lent que votre service le plus lent – puisque les latences ne sont pas parfaitement prévisibles, avec suffisamment de services, même si elles sont rapides, vous il suffit dun peu de malchance pour ralentir le chargement de la page.

Si la latence est de 0, répartir votre charge sur de nombreux serveurs peut améliorer la bande passante en utilisant de nombreux services rs (pas si utile car les limitations de bande passante sont probablement proches des clients, pas des serveurs), mais plus important encore, cela peut réduire légèrement la quantité de données transmises en augmentant lefficacité de la mise en cache.

Cela dépend de votre scénario, mais je mattendrais généralement à ce que la latence soit plus un problème que la bande passante, à moins que vos scripts ne soient incroyablement énormes (ce que jquery ne lest pas). À ce stade, il est généralement plus rapide dhéberger jquery dans le cadre dun fichier local concaténé.

Les raisons de ne pas héberger localement sont, par exemple, lorsque vous payez pour la bande passante ou que vous hébergez sur un serveur lent ( votre connexion au client est goulot détranglement de votre côté, pas du client), ou vous savez que vos clients auront une bande passante très faible (dsl ou modems bas de gamme, par exemple – le mobile a tendance à avoir plus de problèmes de latence que de bande passante) , ou vos clients paient pour la bande passante (par exemple, les mobiles) et les scripts sont une partie si notable que la mise en cache mineure est importante (peu probable).

Dans tous les cas: bien plus pertinent sera de savoir si vous  » jai dabord abordé les bases; en-têtes de mise en cache appropriés, concaténation, minification et gzipping (de préférence avec un taux de compression élevé). Et voici le nœud: si vous NE « T » faites pas cela, alors au moins le CDN le fera, de sorte que « s gagne …

TL; DR: Si vous avez couvert la concaténation + la minification + gzipping + la mise en cache, alors servir de petits scripts localement est plus rapide que depuis un CDN malgré les meilleures performances du CDN – mais seulement si vous avez fait vos devoirs, peut-être pas le premier chargement de la page, et il y a certainement des exceptions à cette règle.

Commentaires

  • Incidemment, il y a des copeaux doctets gagnés en utilisant une seule requête: les en-têtes représentent à eux seuls près de 1 Ko, ce qui sur une charge utile de 28 000 nest ‘ t rien. gzip fonctionne mieux avec plus de contexte, ce qui économise encore 0,5 Ko. Les frais généraux TCP, DNS, HTTPS peuvent tous ajoutez facilement un KB ici ou là, et pire, RTT ‘ s. Cest ‘ pourquoi pour de petits fichiers comme celui-ci un CDN est un pas aussi rapide que vous pourriez penser.

Réponse

Lutilisation de la bibliothèque hébergée par jQuery par Google permet à votre page dêtre chargé plus rapidement. En effet, la librairie se charge en même temps que votre page et non après.

Commentaires

  • Mais comment cela affecte-t-il le chargement de la page?
  • Les bibliothèques locales sont également chargées pendant le chargement de la page – Dans les deux cas, le téléchargement de lactif commence lorsque le navigateur (moderne) voit lextrait de code qui déclenche le téléchargement, ce qui se produit généralement avant le téléchargement du document entier . Consultez cette capture décran Firebug pour un exemple

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *