Rendimiento y monitorización

Configurar Redis como caché de objetos

Revisado el 8 min de lectura cache redis

Redis permite conservar en memoria datos que la aplicación puede reutilizar. Para aprovecharlo necesitas activar el servicio en el hosting y conectar una aplicación compatible. Encender Redis no hace que todas las consultas SQL se almacenen automáticamente.

Puede ser útil en tiendas, cursos o administraciones con actividad repetida. Una web informativa con buena caché de página quizá no note una diferencia. La explicación de la caché de objetos de WordPress te ayudará a distinguir ambos casos.

Activar Redis en el área de clientes

  1. Abre el hosting y entra en Gestor de paquetes.
  2. En la tarjeta Redis Cache, enciende el interruptor.
  3. Revisa la memoria asignada y pulsa Activar Redis Cache.
  4. Espera a que el panel confirme la activación. Abre Datos de conexión para consultar los valores.

Gestor de paquetes del hosting con la tarjeta Redis Cache

Todos los planes incluyen Redis para caché. Los límites configurados son 16 MB en Inicia, 32 MB en Webmaster, 64 MB en Avanza, 100 MB en Max, 200 MB en Elástico y 16 MB por cuenta multicuenta. Consulta la memoria que muestra tu servicio; tras cambiar de plan puede aparecer pendiente de aplicar.

Este límite corresponde a los datos de Redis, no a toda la RAM del proceso. Varias webs de una cuenta comparten esa capacidad. No hay un tamaño óptimo universal: depende de cuánto almacenen y reutilicen.

Datos de conexión

Campo Valor
Tipo Unix socket
Host o ruta /tmp/redis.sock
Puerto 0

Panel de datos de conexión de Redis Cache

La ruta es la que ve tu cuenta dentro de su entorno aislado. Que otra cuenta muestre la misma ruta no significa que comparta tu instancia. La aplicación debe ejecutarse en este hosting; no es una dirección para conectar desde tu ordenador.

WordPress y WooCommerce con LiteSpeed Cache

Utiliza una sola integración de caché de objetos por instalación. Si otro plugin gestiona wp-content/object-cache.php, desactiva primero su integración siguiendo sus instrucciones.

  1. Instala y activa LiteSpeed Cache.
  2. Entra en LiteSpeed Cache > Caché > Objeto; en inglés, Cache > Object.
  3. Selecciona Redis como método y configura el host y puerto de la tabla anterior.
  4. Asigna un Redis Database ID diferente al de las otras webs de la cuenta.
  5. Activa Object Cache, guarda y comprueba el estado de conexión. Si falta la extensión Redis, habilítala en la versión de PHP que utiliza esa web antes de continuar.

Comprueba frontal, administrador y actualización de contenido. La caché de objetos no sustituye las exclusiones de página de carrito, pago y áreas privadas.

WordPress con Redis Object Cache

Como alternativa, instala Redis Object Cache. Antes de activar su caché de objetos, guarda una copia de wp-config.php y añade estas líneas antes de que WordPress cargue su configuración. Modifica las constantes existentes si ya están definidas; no las dupliques.

define('WP_REDIS_SCHEME', 'unix');
define('WP_REDIS_PATH', '/tmp/redis.sock');
define('WP_REDIS_PORT', 0);
define('WP_REDIS_DATABASE', 1);

El 1 es un ejemplo: elige un identificador libre en esa cuenta. Abre los ajustes del plugin, comprueba la conexión y activa la caché de objetos. Revisa su diagnóstico si no puede crear el archivo de integración o detecta otro ya instalado. Consulta las opciones del plugin para configuraciones especiales.

PrestaShop y otras aplicaciones

El módulo debe ser compatible con tu versión de la aplicación y admitir conexión por socket Unix. No basta con que anuncie soporte Redis si solo acepta host y puerto TCP. Antes de comprar un módulo, confirma estos requisitos con su desarrollador.

Configura la ruta y puerto de esta guía, separa los datos de cada web y comprueba el resultado con el diagnóstico del módulo. No adaptes una guía de Redis remoto abriendo un puerto del servidor.

Laravel

Con la extensión PhpRedis disponible para el PHP de la aplicación, configura la conexión en .env:

REDIS_CLIENT=phpredis
REDIS_HOST=/tmp/redis.sock
REDIS_PORT=0

Mantén las claves de config/database.php que leen estos valores. Para usarlo como almacén de caché también debes seleccionar Redis en config/cache.php: los proyectos actuales suelen leer CACHE_STORE, mientras que proyectos anteriores pueden usar CACHE_DRIVER. Comprueba qué variable lee tu proyecto; cambiar solo la conexión no cambia el almacén.

Asigna a la conexión de caché un índice Redis propio, por ejemplo mediante REDIS_CACHE_DB si tu configuración utiliza esa variable, y un prefijo específico del proyecto. Actualiza la caché de configuración con tu procedimiento de despliegue y prueba guardar, leer y retirar una clave temporal de prueba desde la aplicación.

No cambies los controladores de sesiones o colas para que utilicen esta instancia: está destinada a datos de caché prescindibles. Sigue la documentación de conexión de Laravel para la versión instalada.

Varias webs en el mismo hosting

Redis suele disponer de 16 bases lógicas, numeradas del 0 al 15. Asigna una diferente a cada integración: Redis Database ID en LiteSpeed Cache, la constante del ejemplo en Redis Object Cache o la conexión de caché en Laravel.

Estas bases no son una separación de seguridad ni tienen memoria independiente. Una operación que vacíe toda la instancia afectaría a las demás webs. Evita comandos globales como FLUSHALL y revisa qué alcance tiene el botón de purga de cada integración.

Medir y desactivar

Compara las mismas operaciones antes y después, con varias repeticiones. Revisa aciertos, fallos, memoria y expulsiones cuando el plugin ofrezca esos datos. Una caché recién vaciada necesita volver a llenarse.

La política prevista es allkeys-lru: cuando alcanza el límite, Redis puede expulsar claves poco usadas recientemente, aunque no tengan caducidad. No elimina necesariamente las más antiguas. Las expulsiones continuas pueden reducir la utilidad de la caché; revisa qué se guarda antes de ampliar el plan.

Para dejar de usarlo, desactiva primero la integración en todas las aplicaciones de la cuenta, comprueba que funcionan y después apaga Redis desde el Gestor de paquetes. Apagar el servicio antes puede provocar errores de conexión en la web.

También te puede ayudar

¿Algo no cuadra o ha cambiado? Cuéntanoslo y lo revisamos.