¿Como mejorar el rendimiento de Joomla!?

⚠️ Nota importante

Este artículo tiene más de un año. La tecnología evoluciona rápido, por lo que algunos contenidos o instrucciones pueden estar desactualizados. Recuerda buscar información reciente y actualizada.

Basado en el artículo: “How to Speed Up – Optimize Joomla Performance?” de  joomspot.net.

Joomla! en sí mismo no es lento, pero en parte, uno de los puntos más positivos de Joomla! es que detrás, hay una gran comunidad desarrollando todo tipo de plugins, componentes, módulos y si no los usamos con cuidado pueden afectarnos el rendimiento de nuestro sitio web. En esta imagen podemos analizar los tiempos de carga de Joomla! por defecto.

Rendimiento de Joomla! con su configuración original.

¿Cómo analizo el rendimiento de mi sitio?

  • Les recomiendo que realicen la evaluación en este sitio: http://analyze.websiteoptimization.com/ . Genera un informe bastante completo.  Ingresamos nuestra URL, hacemos clic en enviar, escribimos el código que aparece en pantalla y hacemos clic en analizar.

¿Qué puntos son importantes del informe que genera http://analyze.websiteoptimization.com/?

  • Las solicitudes HTTP. (HTTP Requests)
  • Tamaño total del sitio. (Total Size)
  • Cantidad de HTML e imágenes CSS
  • Número de archivos CSS y JS.
  • Tamaño de las imágenes.
  • Archivos JS duplicados

 

Es importante leer todas las notas al final del informe ya que también nos indican que aspectos podemos mejorar de nuestro sitio.

Una vez que hemos analizado nuestro sitio, debemos revisar que podemos arreglar desde el mismo administrador de Joomla.

GZip

  • Joomla! Utiliza PHP para crear los HTML de nuestro sitio. Estos archivos pueden ser comprimidos mediante GZIP, esto puede reducir hasta en un 90% el tamaño de los archivos. Lo que se traduce en una disminución del ancho de banda utilizado y el tiempo de carga.
  • Lo activamos desde la Configuración Global en la pestaña de Server. Ahora, debemos comprobar que de  efectivamente esté comprimido el sitio. En esta dirección http://www.gidnetwork.com/tools/gzip-test.php   ingresamos el URL y hacemos clic en Check y esto nos generará un informe donde nos indicará el estado del GZip.

Cache

  • Otro aspecto importante es activar el caché para esto nos dirigimos igualmente la Configuración Global, en pestaña System. Ahora no basta con eso, recordemos activar el plugin en el administrador de plugins. Se llama System-Cache.  

 

¿Qué elementos podemos evitar para mejorar el rendimiento de nuestro sitio?

Número de módulos: Entre menos mejor. No hay que sobrecargar el sitio con módulos innecesarios. Cada módulo significa una solicitud HTTP, en incluso pueden cargar su propio CSS o JS.

Componentes: Desinstale los componentes que no usa. Escoja un editor, no tenga dos o tres. Escoja el más eficiente.

Plugins: Evalúe los beneficios de instalar un plugin. Desinstale los que no necesita. Por ejemplo, si usa el editor JCE junto con sus utilidades (JCE Utilities) tenga en cuenta los siguientes efectos del JCE Utilities Plugin en Joomla!:

  • 11 nuevas solicitudes HTTP
  • Tiempo de carga aumenta 50 segundos a una velocidad de 56k
  • 3 elementos JS adicionales y 2 CSS.
  • Aumenta el tamaño total de una página en 225396 bytes.

Monitoreo en tiempo real: No hace falta tener plugins de monitoreo en Joomla! Mejor use el servicio externo que da Google Analytics. Todos los módulos/complementos de terceros ralentizan la carga de la página. http://www.google.com/analytics/. Desactive las estadísticas de Joomla.

Sobre los templates:

  • Trate de usar siempre un template liviano y simple. Analice un cada plantilla por separado en http://analyze.websiteoptimization.com/ antes de subirla y usarla. Si no puede cambiar el template recorte y optimice los aspectos del informe que considere convenientes.

Optimización del CSS.

¡Cuidado! Al igual que en cualquiera de los pasos que he venido describiendo, realice una copia de respaldo del sitio por cualquier eventualidad.

Optimizaciónd de Java Script

 

Imágenes HTML:

Nunca le pida al navegador que cambie el tamaño de una imagen por usted. Si usted inserta una imagen grande y le cambia el tamaño entonces el navegador va a cargar la imagen completa y luego va a reducirla por lo que aumenta el tiempo de carga. Es mejor subir las imágenes del tamaño que es y ya. Recuerde que puede utilizar la opción en Photoshop de guardar la imagen para Sitio Web, esto le va a reducir bastante el tamaño al archivo.

Imágenes CSS:

Entre más simple la plantilla, menos imágenes CSS. Si su plantilla ofrece distintos colores, estilos, módulos y menús, deberíamos manualmente editar los archivos CSS o el index.php de nuestra plantilla para que carguen únicamente los scripts necesarios.  Por defecto la mitad de las imágenes CSS pueden ser desactivadas o sus referencias pueden ser removidas sin ningún efecto en la apariencia o presentación de la plantilla.

¡Haga una limpieza de su sitio!

  • Elimine todos los componentes/módulos/plugins no deseadas o no usadas
  • Revise que no haya tablas PHP que ya no utilice.
  • Optimice o repare las tablas de la base de datos por medio de PhpMyAdmin.
  • Analice su sitio con Google Webmaster y revise que no haya errores 404 ya que estos pueden tener un efecto negativo en la velocidad del sitio.
  • Combine los archivos CSS y JS para reducir las solicitudes HTTP y el tamaño del archivo.
  • Esto se complica un poco pero puede usar dos extensiones: Minify (trabaja desde el directorio de raíz) o Com_minify.
  • Use la técnica CSS Sprite. Estos son dos artículos que pueden serles de utilidad.

http://websitetips.com/articles/css/sprites/

http://css-tricks.com/css-sprites-what-they-are-why-theyre-cool-and-how-to-use-them/

Nota: todos los sitios son diferentes en su configuración y diseño, no todas las indicaciones son precisamente aplicables a todos. Recuerden siempre hacer un respaldo de su sitio antes de realizar estos procedimientos.

Por último, voy a recomendar una extensión que realiza automáticamente varios de los puntos que he mencioando. No es lo mismo que hacerlo a mano pero hace un buen trabajo y es bastante recomendada. 

Fundador
Seguidor de Jesús. Escribo artículos en mi tiempo libre sobre temas de tecnología que me interesan.