started - jquery ui cdn




Cargar archivos desde un CDN o CDNS múltiples (6)

Debería evitar el uso directo de varios enlaces CDN en una sola página, ya que afecta el rendimiento. Puede probar el siguiente código para agregar varios enlaces CDN.

bundles.UseCdn = true;
bundles.Add(new ScriptBundle("~/bundles/jquery",
@"//ajax.aspnetcdn.com/ajax/jQuery/jquery-1.10.2.js"
).Include(
"~/Scripts/jquery-{version}.js"));

Combina varios archivos en un solo archivo, reduce la cantidad de solicitudes al servidor que se requieren para recuperar y mostrar una página web.

En una página web típica, cargo lo siguiente, todo desde CDN:

  • jQuery
  • Angular
  • Oreja
  • Icomoon
  • algunos complementos angulares

¿Es mejor cargarlos desde 1 CDN (si es posible) o desde diferentes CDN? ¿Existen mejores prácticas para esto, o no hace una diferencia?


Debes intentar evitar el uso de CDN como:

  1. Si CDN se realiza debido a algún motivo, también afectará a su aplicación y también puede enfrentar un tiempo de inactividad que nunca debería ocurrir en un código de producción
  2. para CDN, el navegador debe rastrear diferentes dominios y luego descargar los archivos necesarios, lo que llevará más tiempo
  3. La falta de solicitud a diferentes dominios también reducirá el tiempo de carga de tu aplicación

El navegador tiene un límite de 6 solicitudes a la vez, por lo que si realiza muchas solicitudes a la vez, estarán en la cola y tomarán más tiempo, así que intente minimizar el número de solicitudes.

Recomendación -

Usuario Bower / Grunt o Webpack en su aplicación -

  1. Bower traerá todas las dependencias de su aplicación a su servidor / máquina local para que no tenga que buscar diferentes dominios para obtener los archivos requeridos
  2. Grunt concatenará y fusionará todos los archivos diferentes en un solo archivo para que su tamaño disminuya y se realicen menos solicitudes desde el navegador para descargar archivos.

Si tiene alguna duda acerca de Bower / Grunt, puedo ayudarle en eso.


En términos de usar uno o varios CDN, no sería un problema dependiendo de cuántos componentes está descargando desde el mismo nombre de host, de acuerdo con este artículo de Yahoo UI Team , HTTP / 1.1 sugiere que los navegadores deberían limitar las descargas paralelas a dos por nombre de host. Por lo tanto, usar múltiples fuentes CDN, es, diferentes nombres de host debe ser una buena práctica.

Tal vez en el caso de usar componentes relacionados para evitar accidentalmente la falta de coincidencia de la versión como angular y angular-router, por ejemplo, es posible que desee usar el mismo CDN, pero si la descarga por nombre de host aumenta, se crearán fugas de carga de la misma manera (al menos para los navegadores que siguen la sugerencia de especificación).

El uso de un CDN es definitivamente una buena práctica para aumentar el rendimiento de carga de su sitio web. Sin embargo, debe considerar el uso de los CDN más populares que pueda encontrar, ya que aumentaría las posibilidades de obtener una versión en caché de los archivos que está utilizando de un sitio diferente que usa el mismo archivo, lo que aumentaría aún más el rendimiento de carga del archivo. sitio web.

Como @JeffPuckett señaló en los comentarios, los navegadores tienen un límite más alto de descarga simultánea por servidor / proxy en la actualidad:

Firefox 2:  2
Firefox 3+: 6
Opera 9.26: 4
Opera 12:   6
Safari 3:   4
Safari 5:   6
IE 7:       2
IE 8:       6
IE 10:      8
Chrome:     6

Ref .: https://.com/a/985704/4488121


La mejor práctica es utilizar tanto CDN como alternativa (archivos locales). Para responder a su pregunta, debe usar varias rutas CDN como si un CDN estuviera caído, al menos el resto está funcionando. Para el CDN hacia abajo, los fallbacks entrenarán.

En pocas palabras, es la mejor práctica que sigo en mis proyectos.


Podrías usar cdn fácilmente para obtener datos


Una buena pregunta para comenzar a preguntar ahora que la mayoría de los navegadores son compatibles con HTTP2 es: ¿mi CDN es compatible con HTTP2? Si es así, es probable que canalizar esas solicitudes a través de 1 CDN sea más rápido. También podría guardar búsquedas de DNS si los otros CDN no están en caché. Si la CDN es compatible con la función de inserción, también podría aumentar la velocidad, ya que muchas de esas bibliotecas requieren múltiples archivos.





cdn