Creo que todo se reduce a un par de cosas:
- ¿Cuántas páginas que utiliza este código a través de su sitio
- La calidad de la CDN
- ¿Cuánto código es
También hay una diferencia entre el uso de paquetes Javascript populares, como jQuery, y el uso de un paquete personal, que solo tendrán los visitantes que hayan visitado su sitio.
La mejora del rendimiento puede producirse desde dos lugares: 1) caché del navegador y 2) dns cache, que incluso si el archivo no se almacena localmente, el servidor dns tiene una ruta que minimiza el tiempo de solicitud o incluso sirve temporalmente el archivo.
Aconsejaría usar un CDN y alojar los archivos localmente. Dependiendo de sus recursos (hardware/ancho de banda), puede que necesite usar un CDN de todos modos. Sería bueno utilizar programadores del lado del servidor para verificar el estado de CDN y redirigir la ruta cuando corresponda.
Además, recuerde que algunos usuarios eligen desactivar la memoria caché de su navegador. Así que minificar su JS siempre es un plus.Debe separar su JS en dos archivos: 1) Necesario en la carga y 2) No es necesario en la carga. Básicamente, obtenga primero el código necesario para mejorar el tiempo de carga percibido. A continuación, cargue todos los demás extras (por ejemplo, presentaciones de diapositivas, cambiadores de color, etc.).
Un último punto es hacer uso de los encabezados Expira, ya que nada de esto es importante si no se optimiza. Eso es lo que realmente reducirá la velocidad para los visitantes devueltos con la memoria caché habilitada. YSlow es un buen complemento de Firefox que te ayudará a evaluar el rendimiento de tu carga.
Para responder a su pregunta: Reducir las peticiones HTTP, pero hacer su propia evaluación del tamaño del archivo de la JS.
(Being Extreme) No desea un archivo JS de 10 MB, o su sitio tardará demasiado en cargarse. Tampoco quiere 1000 archivos de 10 KB debido a la sobrecarga de HTTP. Nuevamente, use esto para ilustrar el punto en el que desea un equilibrio entre el tamaño y la cantidad de archivos, y como dije antes, empaquételos en el rendimiento necesario versus deseado.
Bien chicos, ¡Bounty está activado! – Industrial