Cómo acelerar Drupal: optimización del rendimiento

Una página web en Drupal rápida ofrece una mejor experiencia de usuario, más conversiones y mejores posiciones en Google. En esta guía repasamos todas las formas de optimizar tu sitio Drupal para lograr la máxima velocidad.

Por qué es importante el rendimiento

La velocidad tiene un impacto directo en tu página web:

  • Experiencia de usuario: los visitantes abandonan los sitios lentos
  • Posicionamiento SEO: Google premia las páginas web rápidas
  • Conversiones: cada segundo de retraso cuesta ingresos
  • Costes de servidor: los sitios eficientes consumen menos recursos Los estudios muestran que el 40% de los visitantes abandona una página que tarda más de 3 segundos en cargar.

Configurar la caché de Drupal

La caché es la optimización más importante que puedes hacer.

Activar la caché de páginas interna

Drupal tiene una potente caché integrada:

  1. Ve a Configuration y después a Development
  2. Haz clic en Performance
  3. Configura Browser and proxy cache:
    • Page cache maximum age: como mínimo 1 hora, preferiblemente 1 día
  4. Haz clic en Save configuration

Configurar la caché por tipo de contenido

Para el contenido dinámico puedes ajustar la caché con más detalle:

  1. Ve a Structure y después a Content types
  2. Edita el tipo de contenido
  3. En Publishing options, ajusta la configuración de caché
  4. Guarda los cambios

Vaciar la caché

Después de hacer cambios, a veces tienes que vaciar la caché:

  1. Ve a Configuration y después a Performance
  2. Haz clic en Clear all caches Con Drush (SSH):
drush cache:rebuild
# O, en forma abreviada:
drush cr

Agregación de CSS y JavaScript

La agregación combina archivos para que los tiempos de carga sean más cortos.

Activar la agregación

  1. Ve a Configuration y después a Development
  2. Haz clic en Performance
  3. En Bandwidth optimization:
    • Marca Aggregate CSS files
    • Marca Aggregate JavaScript files
  4. Haz clic en Save configuration

Ventajas de la agregación

  • Menos peticiones HTTP
  • Archivos más pequeños gracias a la compresión
  • Primera carga más rápida

Después de hacer cambios

Si modificas el CSS o el JS, vacía la caché para renovar los archivos agregados.

Optimización de la base de datos

Una base de datos optimizada es esencial para el rendimiento.

Ejecutar cron con regularidad

El cron de Drupal limpia la base de datos:

  1. Ve a Configuration y después a System
  2. Haz clic en Cron
  3. Configura la frecuencia (como mínimo cada 3 horas)
  4. O ejecútalo manualmente: haz clic en Run cron Con crontab (recomendado):
# Ejecuta cron cada 6 horas
0 */6* * * cd /path/to/drupal && drush cron

Optimizar las tablas de la base de datos

Con phpMyAdmin:

  1. Abre phpMyAdmin en DirectAdmin
  2. Selecciona tu base de datos de Drupal
  3. Selecciona todas las tablas
  4. Elige Optimize table en el menú desplegable

Limpiar las tablas de caché

Drupal guarda mucha caché en la base de datos:

# Con Drush
drush sql-query "TRUNCATE cache_default"
drush sql-query "TRUNCATE cache_render"
drush sql-query "TRUNCATE cache_page"

Optimización de PHP

Optimiza PHP para mejorar el rendimiento de Drupal.

Activar OPcache

OPcache acelera PHP de forma considerable:

  1. Comprueba si OPcache está activo en Reports y después en Status report
  2. O con phpinfo()
  3. En el hosting de Theory7, OPcache está activado de forma predeterminada

Aumentar la memoria de PHP

Para sitios complejos:

  1. Ve a DirectAdmin
  2. Haz clic en Domain Setup y después en PHP Settings
  3. Aumenta memory_limit a 256M o 512M
  4. Guarda los cambios

Versión de PHP

Usa siempre la versión más reciente de PHP:

  • PHP 8.2 u 8.3 recomendado para Drupal 10
  • Las versiones más recientes son bastante más rápidas

Optimización de módulos

Los módulos pueden influir mucho en el rendimiento.

Desactivar los módulos innecesarios

Cada módulo activo consume recursos:

  1. Ve a Extend
  2. Revisa todos los módulos activos
  3. Desactiva los módulos que no uses
  4. Elimínalos por completo si es posible

Instalar módulos de rendimiento

Módulos de rendimiento que puedes tener en cuenta: BigPipe (core):

  • Carga las páginas de forma progresiva
  • Incluido de serie en Drupal 10 Advanced CSS/JS Aggregation:
composer require drupal/advagg
  • Optimización avanzada de los recursos
  • Agrupación y minificación

Identificar las consultas lentas

Con los registros de la base de datos o con módulos:

  1. Activa el registro de consultas lentas (slow query log) en MySQL
  2. Analiza las consultas lentas
  3. Añade índices donde haga falta

Optimización de Views y del contenido

Las vistas pueden ser lentas si no están bien configuradas.

Activar la caché de Views

  1. Edita la vista
  2. Ve a los ajustes de Advanced
  3. Haz clic en Caching
  4. Configura una caché basada en el tiempo
  5. Guarda la vista

Usar la paginación

Limita el número de elementos por página:

  1. En la vista, ve a Pager
  2. Configura un número razonable de elementos (10-25)
  3. Esto evita consultas pesadas a la base de datos

Limitar la precarga de contenido

Carga solo los campos que necesitas:

  1. Usa Fields en lugar de la presentación Content
  2. Selecciona solo los campos necesarios
  3. Evita las relaciones complejas

Optimizar las imágenes

Las imágenes suelen ser los archivos más grandes.

Usar estilos de imagen

  1. Ve a Configuration y después a Media
  2. Haz clic en Image styles
  3. Crea estilos para los distintos tamaños
  4. Drupal escala las imágenes automáticamente

Activar la carga diferida

Carga las imágenes solo cuando entran en pantalla:

  1. Drupal 10 incluye una carga diferida básica
  2. Valora módulos como Lazy-load para tener más control

Formato WebP

Usa WebP para tener archivos más pequeños:

  1. Comprueba si tu servidor admite WebP
  2. Usa Image Styles para generar WebP
  3. Los navegadores modernos muestran WebP y los más antiguos reciben una alternativa

Supervisión del rendimiento

Mide tus resultados con regularidad.

Herramientas internas

  1. Ve a Reports y después a Status report
  2. Comprueba las métricas de rendimiento
  3. Consulta el estado de la base de datos y de la caché

Herramientas externas

  • Google PageSpeed Insights: análisis detallado
  • GTmetrix: tiempos de carga y gráficos en cascada
  • WebPageTest: métricas detalladas

Lista de comprobación del rendimiento

  • Caché de páginas activa
  • Agregación de CSS/JS activada
  • Cron se ejecuta con regularidad
  • OPcache activo
  • Imágenes optimizadas
  • Módulos innecesarios desactivados

¿Necesitas ayuda?

Estamos a tu disposición. ¿Te has encontrado con algún problema o tienes preguntas? Nuestro equipo de soporte te ayuda personalmente. Envíanos un mensaje a través del sistema de tickets: normalmente respondemos en unas horas y buscamos contigo la solución.

¿Buscas una dirección de correo electrónico? Consulta nuestra oferta.