Esto puede ser obvio para algunos, pero me he estado preguntando: ¿por qué debería depender del servidor de Google para alojar jQuery para mi sitio?
¿Es solo porque se carga más rápido de esta manera?
jquery
performance
cdn
Yvette
fuente
fuente
Respuestas:
Esto es porque:
(La mayoría de los navegadores solo descargarán 3 o 4 archivos a la vez desde un sitio determinado).
(A medida que más sitios siguen esta práctica, más usuarios ya tienen el archivo listo).
(Google puede precomprimir el archivo en una amplia gama de formatos (como GZIP o DEFLATE). Esto hace que el tiempo de descarga sea muy pequeño, porque está súper comprimido y no está comprimido sobre la marcha).
(Google básicamente ofrece ancho de banda gratuito).
(Google tiene servidores en todo el mundo, lo que disminuye aún más la latencia).
(Si te gusta "volar por el asiento de tus pantalones", siempre puedes usar la última versión de cualquier script que ofrezcan. Esto podría solucionar los agujeros de seguridad, pero en general solo rompe tus cosas).
fuente
Hay varios escenarios en los que es posible que no desee utilizar jQuery del CDN de Google:
Cuando está creando una aplicación de intranet donde el servidor web está alojado en la misma red que los clientes. Si usa el CDN jQuery de Google, realizará una llamada a Internet en lugar de un servidor web en la red local. Esto aumenta el ancho de banda para su organización y es más lento.
Cuando quieras ejecutar tu aplicación sin conexión . (Muy relacionado con el primer problema) Si necesita trabajar en un entorno de desarrollo (administrado, por ejemplo, con Bower ), es posible que deba hacer que su aplicación funcione sin conexión a Internet (es decir, en un tren :)
Cuando necesites personalizarlo . Por ejemplo, si usa Grunt para construir la biblioteca para usar solo ciertos módulos o establecer el nombre de AMD
Cuando está sirviendo páginas sobre SSL que requieren jQuery. Debe servir el JavaScript sobre SSL así como su página para evitar problemas de seguridad y advertencias.
Además, Microsoft aloja jQuery en su CDN. Esa es otra opción comparable al uso de jQuery alojado por Google.
fuente
src="//ajax.googleapis.com/..."
, trabajo.Este estudio de TJ VanToll me convenció de que es mejor concatenar jQuery con otros scripts en lugar de cargarlo desde un CDN.
La razón es la latencia involucrada en la obtención de jQuery en dispositivos móviles:
También cita esta publicación de Steve Souders que muestra por qué es poco probable que obtenga el beneficio de almacenamiento en caché al usar un CDN:
fuente
El mayor beneficio es el almacenamiento en caché. La teoría es que si un visitante visitó un sitio que estaba cargando sus bibliotecas de JavaScript, por ejemplo, jQuery, por ejemplo, de Google CDN, cuando visitan su sitio web, la biblioteca ya está en la memoria caché del navegador de ese usuario y no tendrá que volver a descargarla . Esto suena muy bien en teoría.
Los beneficios que se comparten aquí y en otros lugares son todos teóricos. Acabo de encontrar un análisis en profundidad sobre el uso de una CDN y si proporciona los beneficios de rendimiento esperados. http://www.root777.com/appdev/does-using-google-libraries-api-cdn-give-you-performance-benefits
fuente
Una razón importante para NO permitir que Google aloje su jQuery, algo en lo que muchas personas no piensan, es que no se descargará si se encuentra en China. Está bloqueado junto con muchos otros scripts, fuentes, etc. alojados por Google CDN. Si necesita llegar a una audiencia china, lo mejor es usar siempre una reserva alojada en su propio servidor. Google APIS bloqueado en China
fuente
Algunas buenas respuestas aquí a "Por qué deberías ..." y "Por qué no deberías ..."
Simplemente quiero agregar una lista de alternativas a Google si desea cargar jQuery desde un CDN.
Pero para resumir, básicamente está mejorando el rendimiento general de su sitio web / aplicación.
fuente
Use CDN con un Service Worker, puede descargar el CDN una vez en la vida del cliente y no cada vez que actualice su código.
fuente