Por que Redis es especialmente util para WooCommerce
WooCommerce genera un volumen significativo de consultas a la base de datos en cada carga de pagina: consulta precios de productos, niveles de inventario, configuracion de impuestos, metodos de envio disponibles, datos del usuario registrado, historial de pedidos, opciones de la tienda y mucho mas. En una tienda activa con decenas de usuarios simultaneos, estas consultas repetitivas pueden convertirse en un cuello de botella importante en la base de datos MySQL.
Redis como cache de objetos almacena en la memoria RAM del servidor los resultados de estas consultas frecuentes. Cuando WordPress o WooCommerce necesita los mismos datos, los obtiene de Redis en microsegundos en lugar de ejecutar una consulta SQL que puede tardar decenas de milisegundos. El impacto es especialmente notable en paginas que no pueden cachearse completamente (como el checkout y las paginas de cuenta de usuario) donde el cache de paginas no puede ayudar.
Instalar y configurar Redis para WooCommerce
Paso 1: Verificar disponibilidad de Redis
Preguntar al soporte tecnico del proveedor de hospedaje si Redis esta disponible en el plan. En VPS, instalarlo directamente:
sudo apt install redis-server -y sudo systemctl enable redis-server --now redis-cli ping # Debe responder PONG
Paso 2: Configurar la conexion en WordPress
# En wp-config.php, antes del comentario 'That's all, stop editing!'
define('WP_REDIS_HOST', '127.0.0.1');
define('WP_REDIS_PORT', 6379);
define('WP_REDIS_DATABASE', 0);
define('WP_REDIS_TIMEOUT', 1);
define('WP_REDIS_READ_TIMEOUT', 1);
define('WP_REDIS_MAXTTL', 86400);Paso 3: Instalar y activar el plugin Redis Object Cache
- Instalar el plugin Redis Object Cache desde el repositorio oficial de WordPress.
- En el panel del plugin, hacer clic en Habilitar cache de objeto.
- El estado debe mostrar Conectado con un icono verde.
Beneficios medibles de Redis en WooCommerce
| Metrica | Sin Redis | Con Redis |
|---|---|---|
| Consultas SQL por carga de pagina de producto | 40-80 consultas | 5-15 consultas |
| TTFB de la pagina de cuenta de usuario | 800-2000ms | 200-500ms |
| Tiempo de carga del checkout | 1500-3000ms | 400-1000ms |
| Consultas MySQL por minuto en hora pico | 10,000-50,000 | 2,000-10,000 |
Configurar el limite de memoria de Redis para WooCommerce
# En /etc/redis/redis.conf # Asignar suficiente memoria segun el tamaño de la tienda maxmemory 512mb # Politica cuando se alcanza el limite (LRU: eliminar los menos usados recientemente) maxmemory-policy allkeys-lru
