Cómo acelerar Drupal: optimización del rendimiento
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:
- Ve a Configuration y después a Development
- Haz clic en Performance
- Configura Browser and proxy cache:
- Page cache maximum age: como mínimo 1 hora, preferiblemente 1 día
- 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:
- Ve a Structure y después a Content types
- Edita el tipo de contenido
- En Publishing options, ajusta la configuración de caché
- Guarda los cambios
Vaciar la caché
Después de hacer cambios, a veces tienes que vaciar la caché:
- Ve a Configuration y después a Performance
- 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
- Ve a Configuration y después a Development
- Haz clic en Performance
- En Bandwidth optimization:
- Marca Aggregate CSS files
- Marca Aggregate JavaScript files
- 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:
- Ve a Configuration y después a System
- Haz clic en Cron
- Configura la frecuencia (como mínimo cada 3 horas)
- 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:
- Abre phpMyAdmin en DirectAdmin
- Selecciona tu base de datos de Drupal
- Selecciona todas las tablas
- 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:
- Comprueba si OPcache está activo en Reports y después en Status report
- O con phpinfo()
- En el hosting de Theory7, OPcache está activado de forma predeterminada
Aumentar la memoria de PHP
Para sitios complejos:
- Ve a DirectAdmin
- Haz clic en Domain Setup y después en PHP Settings
- Aumenta memory_limit a 256M o 512M
- 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:
- Ve a Extend
- Revisa todos los módulos activos
- Desactiva los módulos que no uses
- 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:
- Activa el registro de consultas lentas (slow query log) en MySQL
- Analiza las consultas lentas
- 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
- Edita la vista
- Ve a los ajustes de Advanced
- Haz clic en Caching
- Configura una caché basada en el tiempo
- Guarda la vista
Usar la paginación
Limita el número de elementos por página:
- En la vista, ve a Pager
- Configura un número razonable de elementos (10-25)
- Esto evita consultas pesadas a la base de datos
Limitar la precarga de contenido
Carga solo los campos que necesitas:
- Usa Fields en lugar de la presentación Content
- Selecciona solo los campos necesarios
- Evita las relaciones complejas
Optimizar las imágenes
Las imágenes suelen ser los archivos más grandes.
Usar estilos de imagen
- Ve a Configuration y después a Media
- Haz clic en Image styles
- Crea estilos para los distintos tamaños
- Drupal escala las imágenes automáticamente
Activar la carga diferida
Carga las imágenes solo cuando entran en pantalla:
- Drupal 10 incluye una carga diferida básica
- Valora módulos como Lazy-load para tener más control
Formato WebP
Usa WebP para tener archivos más pequeños:
- Comprueba si tu servidor admite WebP
- Usa Image Styles para generar WebP
- Los navegadores modernos muestran WebP y los más antiguos reciben una alternativa
Supervisión del rendimiento
Mide tus resultados con regularidad.
Herramientas internas
- Ve a Reports y después a Status report
- Comprueba las métricas de rendimiento
- 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.
A 0 de 0 personas les ha resultado útil