Réponses:
L'utilisation d'un CDN externe tel que Google pour héberger jQuery présente deux avantages majeurs:
Inconvénients potentiels:
Un autre inconvénient:
L'utilisation d'un CDN permet à l'opérateur du CDN de suivre les visiteurs du site. C'est pourquoi ils ne coûtent pas d'argent.
L'utilisation de CDN (s) pour partager vos dépendances sur de nombreux serveurs comme celui-ci représente essentiellement un compromis entre la bande passante et la latence, en supposant que vous ne vous souciez que des performances.
Je suppose d'ailleurs que l'alternative n'est pas simplement de l'héberger localement, mais de la concaténer avec une demande locale différente - il n'y a généralement aucune bonne raison de ne pas concaténer quand vous le pouvez.
Si la bande passante est infinie, 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 s'ils sont rapides, vous n'avez besoin que d'un bit de malchance pour provoquer un lent chargement de la page.
Si la latence est de 0, la répartition de votre charge sur de nombreux serveurs peut améliorer la bande passante en utilisant de nombreux serveurs (pas très utile car les limites de bande passante sont probablement proches des clients, pas des serveurs), mais plus important encore, cela peut réduire la quantité de données transmises légèrement en augmentant l'efficacité de la mise en cache.
Cela dépend de votre scénario, mais je m'attends 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 qui n'est pas le cas de jquery). À ce stade, il est généralement plus rapide d'héberger jquery dans le cadre d'un 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 celle du client), ou vous savez que vos clients auront une bande passante vraiment faible (DSL ou modems bas de gamme, par exemple - le mobile a tendance à avoir plus de problèmes de latence que les problèmes de bande passante), ou vos clients paient pour la bande passante (par exemple mobile) et les scripts en sont une partie tellement notable que la mise en cache mineure gagne en importance (peu probable ).
Dans tous les cas: beaucoup plus pertinent sera de savoir si vous avez d'abord couvert 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 du problème: si vous ne faites pas cela, alors au moins le CDN le fera, alors c'est gagnant ...
TL; DR: si vous avez concaténé + minification + gzipping + mise en cache tous couverts, 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 sur la première page charge, et il y a certainement des exceptions à cette règle.
L'utilisation de la bibliothèque hébergée jQuery par Google permet à votre page d'être chargée plus rapidement. En effet, la bibliothèque est chargée en même temps de votre page plutôt qu'après.