Saltar al contenido principal.

Cómo configurar Redis como servidor de caché



El almacenamiento en caché de datos en la memoria RAM a través de Redis es uno de los métodos para acelerar el sitio. Este almacenamiento es altamente eficiente y puede usarse para almacenar en caché no solo sitios, sino también sesiones, así como una base de datos no relacional.

La instalación de Redis se realiza en dos pasos:


  1. Conectando el repositorio de backports . La versión en el repositorio estándar es demasiado antigua.
  2. Instalar con aptitude install -t jessie-backports redis-server redis-tools

Contenido del artículo:

Configuramos la configuración óptima.

En Debian, el archivo de configuración se encuentra en el directorio / etc / redis / y se llama redis.conf .

En primer lugar, debe corregir el error con el número máximo de conexiones TCP que no se ha especificado correctamente. Esto es relevante cuando se utilizan tomas TCP.

Imprimimos el comando cat /proc/sys/net/core/somaxconn en la consola y configuramos el número apropiado:


  tcp-backlog 128 

Para un trabajo más rápido, habilitamos la capacidad de trabajar con un zócalo Unix.

  unixsocket /var/run/redis/redis.sock
 unixsocketperm 777 

Limitamos el número máximo de clientes conectados. Si necesita más de 1024 conexiones, también debe cambiar el límite en el número de archivos abiertos simultáneamente (ulimit).

  maxclientes 1024 

Determine la cantidad de RAM asignada a la caché. En el caso de un valor cero, se utilizará toda la memoria RAM disponible.


  maxmemory 64mb 

Determinamos la política de trabajo con memoria. Con esta política, durante la escasez de memoria, las claves más antiguas y menos utilizadas se eliminarán para dejar espacio para las nuevas.

  maxmemory-policy allkeys-lru 

Además, para evitar problemas con el trabajo de Redis (párrafo 3 del manual , inglés), debe deshabilitar la función del núcleo Transparent HugePages.

  # echo never> / sys / kernel / mm / transparent_hugepage / enabled 

Reinicie para que los cambios surtan efecto.

  # service redis restart 

Y agregamos las siguientes líneas al archivo /etc/rc.local para que después de reiniciar el servidor esta función esté deshabilitada.

  si prueba -f / sys / kernel / mm / transparent_hugepage / enabled;  entonces
    echo nunca> / sys / kernel / mm / transparent_hugepage / enabled
 fi
 si prueba -f / sys / kernel / mm / transparent_hugepage / defrag;  entonces
    echo nunca> / sys / kernel / mm / transparent_hugepage / defrag
 fi 

Cachear sesiones de php

Puede configurar php para almacenar sesiones de varias maneras, dependiendo del paquete utilizado.

Directamente en php.ini

  [Sesión]
 session.save_handler = redis
 session.save_path = "unix: ///run/redis/redis.sock" 

Apache2 y mod_php (en el archivo de host virtual o apache2.conf)

  <IfModule mod_php5.c>
 php_admin_value session.save_handler "redis"
 php_admin_value session.save_path "unix: ///run/redis/redis.sock"
 </ IfModule> 

PHP-FPM (en el archivo pool)

  php_admin_value [session.save_handler] = "redis"
 php_admin_value [session.save_path] = "unix: ///run/redis/redis.sock" 


¿Cómo calificas el artículo?
Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (No hay valoraciones aún)
Cargando ...

Añadir un comentario

Su correo electrónico no será publicado.