Mi Drupal va lento

En ciertas ocasiones, nos encontramos con que nuestro sitio web va más despacio de lo que quisiéramos y no sabemos por qué. Pues bien, aquí exponemos algunos consejos que podéis aplicar en vuestro sitio Drupal y que son los motivos que explican este comportamiento:

  1. Activar las cachés y compresiones. Desde el menú de administración, en “Administración → Configuración → Desarrollo → Rendimiento” podéis configurar vuestra caché activando las opciones que aparecen en esta sección para mejorar el rendimiento: Activar la caché de bloques. Activar la caché para usuarios anónimos. Con estas dos opciones anteriores, evitáis que Drupal tenga que reconstruir el HTML que sirve a vuestros usuarios cada vez que visitan la página. Comprimir páginas en caché. Tiempo mínimo de permanencia en caché: poner el menor posible que se ajuste a vuestras necesidades. Unir y comprimir archivos CSS. Unir archivos JavaScript. Con estas dos últimas opciones, se agrupan todos los archivos CSS en uno solo y todos los archivos JavaScript en otro de forma que el navegador tendrá que hacer menos peticiones. Una vez hecho esto, habría que vaciar la caché cada vez que hagáis un cambio de CSS o JavaScript.
  2. Ejecutar el código JavaScript lo más tarde posible. Una opción es poner la línea de código que imprime la variable @scripts del archivo html.tpl.php justo antes de la etiqueta de cierre del body.
  3. Utilizar sprites, para juntar todas las imágenes/iconos de fondo en un solo archivo de imagen. De esta forma, con una petición al servidor te traes todas las imágenes de fondo dejando más espacio al servidor para ejecutar otras peticiones en paralelo. Mejor una petición de 10k que 10 peticiones de 1k.
  4. Activar la caché en Vistas. Si tenéis vistas que no se van a refrescar cada poco tiempo, ni necesitan refresco inmediato – en tiempo real -, podéis activar la caché. Esta opción la encontraréis en las “opciones avanzadas” de vuestra vista. Comentar, que algunas de las vistas que requieren un refresco en tiempo real, si realizan un gran número de inserciones y borrados en la base de datos puede llegar a ser no óptimo pudiendo llegar a corromper la base de datos. Es por ello, que en ocasiones conviene instalar en módulo “DB maintenance” pues te limpia y optimiza las tablas de la base de datos en cada ejecución del cron.
  5. Instalar/desactivar algunos módulos para mejorar en rendimiento. Por ejemplo, tenemos: ImageAPI optimize, CSS embedded images, Aggregate cache, Advanced CSS/JS aggregation, Core library, DB maintenance, desactivar el módulo RDF, etc.