it-swarm-es.com

Bibliotecas JS externas

Tengo algunos archivos js externos que llamo en mi página, en este momento estos se llaman a través de etiquetas de script en el encabezado.

Estoy tentado de extraerlos localmente e incluirlos en mi archivo de script de temas para disminuir el tiempo de carga de la página. Sé que hay una sobrecarga para mantener los scripts actualizados, pero si disminuye el tiempo de carga total de la página, puede valer la pena.

¿Hay una buena práctica para esto? ¿Debo mantenerlos externos o es bueno incluirlos en la estructura drupal JS?

5
Jeremy French

Creo que depende mucho de cuál sea el guión. Definitivamente hay ventajas al usar scripts de terceros en lugar de incluirlos localmente. En la mayoría de los casos, intentaré usar la API de la Biblioteca de Google (http://code.google.com/apis/libraries/) cuando sea posible para cosas como swfobject, webfont loader y similares. La ventaja aquí es que los clientes pueden tener estas bibliotecas almacenadas en caché, lo que aumenta el rendimiento en lugar de alojarlas localmente. Para situaciones en las que no hay un Host de terceros ampliamente utilizado para los scripts, generalmente los agregaré a sitios/todos/bibliotecas/$ nombre_biblioteca y los incluiré localmente, para que pueda aprovechar la capacidad de Drupal de agregar y minimizar JS.

6
beeradb

El efecto neto de extraer scripts externos localmente depende de muchos factores. Considere por ejemplo que:

  • Todos los navegadores tienen límites en la cantidad de recursos (Javascript/CSS/Imágenes) que extraen simultáneamente de un servidor determinado; aumentar el número de recursos en un dominio puede, como consecuencia, aumentar la carga total de la página;
  • Los puntos de distribución centrales (API de bibliotecas de Google, etc.) están distribuidos geográficamente y probablemente sean más confiables y rápidos que sus propios servidores;
  • Es probable que los clientes ya tengan la biblioteca en caché si se distribuye desde el punto de distribución central;
  • Drupal 6 es particularmente tonto en cómo hace la agregación de archivos JS y CSS, y esto puede llevar a que sus clientes tengan que descargar la misma biblioteca varias veces si visitan páginas en su sitio web que tienen un conjunto diferente de archivos Javascript.

En consecuencia, le recomendaría cambiar nuevamente a una versión local si ya está utilizando una versión alojada en CDN.

3
Damien Tournoud

Mire el módulo emergente Agregación avanzada de CSS/JS - tiene como objetivo proporcionar el sistema de agregación más completo y eficiente de la historia.

3
Vacilando