Optimiza la velocidad de carga de tu sitio Joomla!

Cómo hacer más rápido mi sitio con Joomla!

Considera a Joomla! como un framework en el cual puedes desarrollar e integrar nuevos componentes y publicar sitios web profesionales llenos de características. La flexibilidad de Joomla y su fácil uso lo hace uno de los manejadores de contenido más populares, lo que ha conllevado a tener una vasta comunidad y muchísimas extensiones. Joomla! está limitado sólo por la imaginación. Entonces, ¿¡por qué es tan lento Joomla!?

Joomla! como tal no es lento, uno sólo requiere configurar apropiadamente y usar las opciones ya incluídas para optimizar su rendimiento. Si los desarrolladores de Joomla optimizaran su operación por defecto, sería muy difícil para los webmasters personalizar Joomla! y mucho más difícil realizar cambios funcionales.

Depende de cada usuario el obtener el rendimiento máximo de Joomla! con una correcta configuración y optimización. Joomla! tiene un gran potencial para ser optimizado, tanto en rapidez como rendimiento.

Alguno de los puntos esenciales a tomar en cuenta son:

  • La velocidad y rendimiento de Joomla! depende grandemente del tema elegido, seguido de incorporaciones de componentes/módulos y plugins.
  • La cantidad de CSS, imágenes y Javascripts (su tamaño) afecta el rendimiento final de Joomla!
  • El activar el Gzip incluido y el sistema de Caché hace más rápido el funcionamiento del sitio Joomla!
  • La limpieza del código CSS puede tener como resultado un sitio con excelente rendimiento en términos de reducción de solicitudes HTTP y peso total de la página.
  • La compresión y reducción de archivos CSS y JS, así como la compresión y optimización de imágenes principales, resultan  básicos para un mejor rendimiento de Joomla!

Qué más puede realizarse

  • Optimiza los archivos CSS y JS para eliminar los espacios en blanco o comentarios (esto reduce el tamaño de esos archivos de 10 a 40%).
  • Uso de componentes comerciales u otras extensiones de Joomla!, tales como page cache, Query cache, plugin cssjscompress (que reduce aún más el tiempo de carga y solicitudes http).
  • Combina los archivos CSS y JS en uno solo (lo que disminuye las solicitudes http).

Puntos que no debes olvidar

  • Cada ambiente de funcionamiento es distinto y la configuración es igualmente distinta, por lo que podrías requerir distintos caminos para optimizar. No todas las opciones funcionan a la perfección en todos los sitios.
  • Algunos componentes como page cache, Query cache, cssjscompress, podrían incluso ocasionar que el sitio no funcione. Es por eso que los foros están llenos de consultas y preguntas.
  • Cualquier cosa que intentes en tu sitio, siempre debes tener un respaldo reciente, y también respalda el archivo o archivos que tengas en mente modificar. Si no lo haces, no tendrás forma de regresar a ese punto en caso de algún problema.
  • Para fácilidad de cálculo, recuerda que cada módulo o imagen aumenta por 1 las solicitudes http. Por ejemplo, si tienes 20 imágenes en una página, eso significa que tienes 20 solicitudes http adicionales.

Cómo y donde analizar el rendimiento de mi sitio Joomla

Una herramienta útil es la del sitio: http://analyze.websiteoptimization.com. Visita esa liga y analiza tu sitio. Espera unos segundos y guarda como imagen las recomendaciones. Existen otros analizadores en línea, utiliza el que prefieras, nosotros te sugerimos este.

Parámetros importantes

1. Solicitudes HTTP
2. Peso total
3. Número de imágenes  HTML /CSS
4. Número de archivos CSS / JS
5. Tamaño de las imágenes CSS/JS/HTML
6. Vigila archivos JS duplicados
7. Atención con los items NOT FOUND o No Encontrado.

Estos parámetros te darán una idea apropiada de lo que no está bien y lo que requiere corregirse. Coloca especial atención en las partes coloreadas en rojo.

¿Qué incluye Joomla para optimizar el sitio?

Joomla utiliza PHP para crear las páginas HTML que conforman tu sitio. Estas páginas pueden comprimirse utilizando compresión Gzip. La mayoría de servidores soportan Gzip, que puede comprimir tu sitio de 70 a 90%. Esto resultará en menor consumo de ancho de banda y carga más rápida de la página para tu visitante. Recuerda, sin embargo, que Gzip ejercerá mayor énfasis en el consumo propio de procesamiento del servidor.

Para habilitar la Compresión Gzip en tu sitio Joomla!, visita Configuración Global, en la pestaña de Servidor das click y allí habilitas el Gzip. Puedes confirmar que tu sitio está siendo comprimido por medio del uso de una herramienta externa:

http://www.gidnetwork.com/tools/gzip-test.php

Coloca la URL de tu página y te indicará si la página está o no siendo comprimida.

Caché (sistema de cache)

El caché funciona muy bien y casi siempre debe estar habilitado, en Configuración Global; otra forma de habilitarlo es en la sección de Plugins Manager, habilitando el «System Cache». Algunas veces habilitar el caché puede generar problemas inesperados, por lo que es aconsejable revisar tu sitio al detalle una vez lo habilites.

Qué puede evitarse para mejorar el rendimiento de Joomla!

Cantidad de módulos

Mientras menos módulos, mejor. No recargues tu sitio Joomla con módulos extra, ya que cada módulo añade solicitudes http e incluso puede cargar su propio archivo CSS o JS.

Componentes

Elige los componentes a utilizar, los más eficientes. Desinstala lo que no uses.

Plugins

Evalúa los beneficios antes de instalar un plugin. Deshabilita o desinstala los que no uses.

Por ejemplo: Muchas personas utilizan el JCE editor y durante la instalación también instalan el plugin «JCE utilities». El fecto del plugin JCE Utilities en Joomla es:

1. Las solicitudes HTTP se incrementan en 11
2. El tiempo de carga aumenta
3. 3 archivos Javascripts adicionales y 2 CSS.
4. El total de carga de página se incrementa en 225396 bytes.

Considera si el tiempo de carga vale la pena. Este es un sólo ejemplo.

Estadísticas – Real Time Monitoring

Lo más recomendable es que las estadísticas de Joomla no las utilices, y uses Google Analytics en su lugar. Las estadísticas generan muchas consultas a base de datos . Cualquier otro módulo o componente de estadísticas le dará sobrecarga a tu sitio Joomla. Google Analytics te dará la información necesaria y relevante.

Ajustes Manuales para un Joomla más veloz

Tema o template

1. Siempre trata de tener el tema más liviano.
2. Si el tema no es una opción y está ya elegido, recorta lo más que puedas las características usadas, tales como herramientas de usuario, módulos especializados de ingreso. Despublica esos módulos y si es posible remueve su referencia del CSS también.

Optimización CSS

Haz un respaldo de tus archivos CSS y luego correlos a través de un optimizador en línea, del tipo de:
http://www.cssoptimiser.com/index.php
Este reduce el tamaño del archivo en 10 a 30% y elimina los comentarios y espacios en blanco en el código css. Recuerda que, después de este paso el archivo css no será más leible para humanos, por lo que siempre, siempre debes hacer copia y respaldo.

Optimización Java Scripts

Después de realizar una copia de tu archivo JS, correlo a través de un compresor JS en:
http://javascriptcompressor.com/
Los resultados varían, y no todos los archivos JS logran comprimirse, pero no hay ningún daño en intentarlo.

Imágenes HTML

Nunca utilices el navegador  para escalar una imagen grande. Usa el editor JCE para realizar autominiaturas o carga las miniaturas manualmente.

Imágenes CSS

Existen imágenes que tu tema carga y estas imágenes lo conforman. Si tienes un tema simple, entonces la cantidad de estas imágenes será reducida.
Sin embrago, si tu tema tiene muchas opciones, tales como color, estilos, módulo de estilo, menús desplegables- entonces es probable que requieras editar manualmente los archivos css de tu index.php del tema para que sólo cargue los scripts indispensables (estilos de menú) o imágenes en el esquema que se haya decidido usar, etc. Por defecto, al menos la mitad de estas imágenes pueden deshabilitarse o sus referencias removidas sin afectar de ninguna manera seria el layout o apariciencia del template.

Depura Joomla!

  • Quita componentes, módulos, plugins, no usados.
  • Checa tu base de datos en busca de tablas en tu base de datos de componentes o plugins que no uses y elimina esas tablas.
  • Optimiza y repara tu base de datos. Puedes usar phpMyAdmin para hacerlo.

Si la analizar el sitio encuentras cualquier resultado de consulta «Not Found», busca y elimina esa consulta. Los errores 404 tienen un mal efecto en la velocidad de un sitio. El servidor y el navegar se quedan pensando como darle tratamiento a ese item que no encuentra.

  • Combinar los archivos CSS y JS para reducir solicitudes HTTP y tamaño de archivo

Existen varias opciones disponibles para hacerse cargo de esta tarea, la cual resulta un poco complicada.

Minify – el cual es un script independiente. Trabaja desde el directorio raíz de Joomla.
Com_minify – Un componente de Joomla que envuelve el motor de minify.

* Parra este artículo se tomó como base la popular versión 1.5.x de Joomla, pero lo aquí expresado aplica para todas las versiones.