Instalar y Configurar Redis en Ubuntu
Redis es el acrónico de REmote DIctionary Server (servidor de diccionario remoto). Es un almacén de estructura de datos de valores de clave en memoria rápido y de código abierto, incorpora un conjunto de estructuras de datos en memoria versátiles que le permiten crear con facilidad diversas aplicaciones personalizadas. Entre los casos de uso principales de Redis se encuentran el almacenamiento en caché. Gracias a su velocidad y facilidad de uso, Redis es una opción popular para aplicaciones web, móviles, de juegos, de tecnología publicitaria y de IoT que requieren el mejor desempeño de su clase.

El uso principal de Redis en este artículo será el de poder almacenar en caché las peticiones a la base de datos, así, por ejemplo se puede usar CloudFlare para cachear los archivos estáticos tales como HTML, CSS, JS y Redis para cachear las peticiones al la base de datos. la mayoría de mis clientes usan WordPress para su sitio web, una vez que se termina el diseño del sitio web, el cliente muy rara vez edita la información ya colocada, cada vez que un usuario consulta una página de mis clientes, se hacen peticiones a la base de datos, pero si la información no ha sido editada, sería mejor que se obtuviera una versión cacheada de la información así el tiempo de carga del sitio web sería reducido considerablemente.
He tenido la oportunidad de utilizar Redis y Varnish como gestores de cacheo de consultas a la base de datos, sin entrar tanto a detalles, puedo decir que Redis es mucho más sencillo de configurar y representa menos problemas al momento de ser implementado por ejemplo en Magento o en WordPress. uno de los problemas con Varnish que si me gustaría destacar es que varnish no funciona muy bien con los sitios web con SSL, el certificado de seguridad vuelve a varnish muy inestable, en el caso de Redis, no he nido que realizar configuraciones adicionales y funciona perfectamente con y sin SSL. incluso con varias bases de datos al mismo tiempo.
Instalación de Redis
Un requisito necesario es el permiso SUDO en nuestro servidor. empezaremos instalando tcl en ubuntu para que nos permita ejecutar pruebas de archivos binarios.
sudo apt-get update sudo apt-get install build-essential tcl
Una vez realizado, procedemos a descargar, instalar y mover el paquete de Redis.
# nos colocamos en la carpeta temporal de Ubuntu cd /tmp # Descargamos la ultima versión de Redis curl -O http://download.redis.io/redis-stable.tar.gz # Descomprimimos el archivos descargado. tar xzvf redis-stable.tar.gz # nos movemos al directorio de Redis cd redis-stable # Finalmente compilamos los archivos binarios. make
Después de que se compilaron los archivos binarios, ejecutamos el siguiente comando para realizar una prueba y comprobar que todos los archivos funcionan bien.
make test
Esto normalmente demorará unos minutos en ejecutarse. Una vez que esté completo, puede instalar los binarios en el sistema con el siguiente comando:
sudo make install
Configurar Redis
Ahora que Redis está instalado, podemos comenzar a configurarlo.
# creamos el siguiente dirkectorio sudo mkdir /etc/redis # copiamos el archivo de configuración al nuevo directorio sudo cp /tmp/redis-stable/redis.conf /etc/redis # Abrimos el archivo de configuración sudo nano /etc/redis/redis.conf # En el archivo, encuentra la directiva "supervised" y cambiar de no a systemd .... supervised systemd .... # En el mismo archivo buscaremos la directiva "dir" y le colocares lo siguiente .... dir /var/lib/redis .... # Guardamos y cerramos el archivo.
Crear un archivo Redis systemd
Crear un archivo systemd será necesario para que el sistema init pueda administrar el proceso Redis, y con ello poder iniciarlo junto con el sistema.
# CReamos y abrimos el siguiente archivo sudo nano /etc/systemd/system/redis.service # Le colocaremos la siguiente información dentro del archivo: --- [Unit] Description=Redis In-Memory Data Store After=network.target [Service] User=redis Group=redis ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf ExecStop=/usr/local/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target --- #guardamos y cerramos el archivo.
Crear el usuario, el grupo y los directorios de Redis
Ahora, solo tenemos que crear el usuario, grupo y directorio al que hicimos referencia en los dos archivos anteriores.
# Creamos el usuario y el grupo de usuario sudo adduser --system --group --no-create-home redis # Creamos el directrio siguiente sudo mkdir /var/lib/redis # Le asignamos el grupo y usuario a la propiedad del directorio sudo chown redis:redis /var/lib/redis # Ajustamos los permisos del directorio sudo chmod 770 /var/lib/redis
Iniciamos el servicio de redis
sudo systemctl start redis
Pruebas de funcionalidad
Si quieres cerciorarte de que Redis esté funcionando bien, puedes ejecutar las siguientes pruebas:
# Iniciamos redis-cli redis-cli # Hacemos ping 127.0.0.1:6379 > ping # La respuesta debería ser PONG # Mandamos un valor a Redis 127.0.0.1:6379 > set test "Hola mundo!" # la respuesta debía ser OK # obtenemos el valor previo 127.0.0.1:6379 > get test # La respuesta debería ser Hola mundo ! # Salimos de Redis 127.0.0.1:6379 > exit # Como prueba final, reiniciamos Redis sudo systemctl restart redis
Habilite Redis para iniciar al restaurar Ubuntu
sudo systemctl enable redis
Con esto tendríamos todo cubierto para que Redis se encuentre instalado, configurado e iniciado junto con Ubuntu. en la siguiente publicación veremos lo fácil que es usar redis con WordPress.
Publicaciones relacionadas
07/15/2017
Comprimir y descomprimir .zip, .gz y .tar.gz por linea de comandos en Linux
Comprimir y descomprimir archivos .zip, .gz y .tar.gz por linea de comandos en…
08/16/2018
Utilizar SSL Let’s Encrypt con Apache en Ubuntu.
Los certificados de seguridad SSL, no solo son importantes para verificar que…
06/21/2019
CloudFlare vs CloudFront, Route53 y AWS shield que servicio es más útil
Para mi, CloudFlare es un servicio más útil que CloudFront, route53 y AWS…
05/15/2017
Cómo crear un enlace simbólico en Linux
Un enlace simbólico es equivalente a una atajo en windows, sirve mucho para…
11/10/2017
Eliminar gran cantidad de archivos en linux
/bin/rm: Argument list too long. es un error que se muestra cuando tratamos de…
10/19/2019
Acortar linea de comando linux
Este pequeño tip es para tener una linea de comandos más estética y podamos…
05/19/2018
Cambiar tamaño de SWAP en linux (Ubuntu)
En esta publicación veremos lo fácil que es cambiar el tamaño de un archivo…
03/14/2019
Acceso remoto MySQL en Ubuntu
MySql puede permitir conectar de forma remota a su base de datos, con esto se…
09/01/2018
Restablecer contraseña root de MySQL 5.7 en Ubuntu 16.04
Este método me ha servido mucho para recuperar la contraseña root de mysql en…