Guia actualizada

Redis tutorial completo: Redis 8, instalacion, CLI y ejemplos reales

Guia practica de Redis para entender cache, sesiones y rate limiting, actualizada con Redis 8, comandos actuales de instalacion, contexto de licencia y compatibilidad con Valkey.

Redis 8ValkeyInstalacionCLICacheBusqueda
6379puerto por defecto usado por Redis
PINGcomando mas rapido para comprobar que el servidor responde
TTLprimitiva basica para construir expiracion de cache

Lo importante antes de instalar Redis

Contenido actualizado para Redis 8, la documentacion actual de instalacion, la licencia de Redis Open Source y el contexto de compatibilidad con Valkey.

Modelo

Redis no se usa como una base relacional clasica

La idea clave es simple: operar por claves, mantener valores compactos y usar expiracion con intencion para cache, sesiones y contadores rapidos.

Instalacion

La via oficial actual de instalacion ha cambiado

Redis recomienda Docker para empezar rapido, paquetes APT/RPM oficiales en Linux, el tap de Homebrew de Redis en macOS y Docker en Windows.

Contexto 2026

Redis 8, licencia y Valkey importan antes de produccion

Redis 8 incluye AGPLv3 dentro de su tri-licencia e integra funciones de la etapa Redis Stack, mientras Valkey sigue siendo una opcion relevante compatible con Redis OSS 7.2.

Practica

La forma mas rapida de aprender Redis es con redis-cli

Con unos pocos comandos se entiende strings, hashes, listas, contadores, expiracion y patrones comunes de inspeccion.

Lo principal

Redis es mas fuerte cuando necesitas acceso muy rapido por clave, expiracion controlada y estructuras simples de datos

Redis suele usarse para cache, sesiones, rate limiting, colas, estado efimero y contadores. Puede persistir datos, pero en muchos proyectos su primer valor practico es reducir latencia y carga delante de sistemas mas lentos.

El contexto de 2026 anade dos decisiones antes de produccion: Redis 8 integra tecnologias que antes se asociaban a Redis Stack, como JSON, search/query, series temporales y estructuras probabilisticas, y la separacion Redis/Valkey obliga a revisar licencia, compatibilidad del servicio gestionado y soporte de clientes antes de elegir plataforma.

Que es Redis

Redis es un almacen de datos en memoria orientado a claves. En vez de pensar en joins, piensas en acceso directo por claves y en estructuras nativas como strings, hashes, listas, sets y sorted sets.

Cuando encaja bien

Cachear consultas a base de datos, guardar sesiones, invalidar tokens, construir contadores de peticiones, mantener estado temporal de carrito o proteger APIs con rate limiting.

Donde hay que vigilar

Redis no es el reemplazo natural de un modelo relacional lleno de joins complejos. Si el valor del sistema depende de integridad relacional y analitica historica larga, Redis suele ser complementario, no la base completa.

Redis 8 y Valkey

Redis 8 esta disponible bajo una tri-licencia que incluye AGPLv3, mientras Valkey mantiene compatibilidad con Redis OSS 7.2 y anteriores. Para mucho codigo de aplicacion el modelo de comandos resulta familiar, pero la decision de produccion ahora incluye licencia, hosting y compatibilidad.

macOS

Instalar con Homebrew

brew tap redis/redis
brew install --cask redis
redis-server $(brew --prefix)/etc/redis.conf
redis-cli ping

La documentacion actual de Redis usa el tap y cask oficial de Homebrew. Tras iniciar el servidor, `redis-cli ping` debe responder `PONG`.

Linux

Usar los paquetes oficiales de Redis

sudo apt-get install lsb-release curl gpg
curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
sudo apt-get update
sudo apt-get install redis
redis-cli ping

En Debian o Ubuntu, conviene usar el repositorio oficial de Redis cuando quieres paquetes actuales de Redis Open Source en lugar de builds antiguos de la distribucion.

Windows

Ejecutar Redis con Docker

docker run -d --name redis -p 6379:6379 redis
redis-cli -h localhost -p 6379 ping

La documentacion actual de Redis presenta Docker como la via para Windows. Memurai aparece como una via de compatibilidad en preview para Redis Open Source 8.2 RC1, asi que Docker es la recomendacion general mas segura para desarrollo.

Codigo fuente

Compilar Redis manualmente

wget https://download.redis.io/redis-stable.tar.gz
tar -xzvf redis-stable.tar.gz
cd redis-stable
make
sudo make install

Esta via es util cuando quieres mas control, necesitas probar builds desde fuente o trabajas en entornos donde los paquetes no te bastan.

Empieza aqui

Comandos basicos con redis-cli

redis-cli ping
SET site:name "1938"
GET site:name
DEL site:name

Este es el bucle minimo: comprobar el servidor, escribir una clave, leerla y borrarla.

Cache

Guardar datos con expiracion

SET page:home "<html>...</html>" EX 60
TTL page:home
GET page:home

Este patron es una de las razones principales para meter Redis en una arquitectura web: mantener datos rapidos un tiempo corto y dejar que expiren solos.

Contadores

Contar peticiones o eventos

INCR stats:visits
INCRBY stats:api:requests 5
GET stats:visits

Los contadores son triviales en Redis y se usan muchisimo para analitica, cuotas y monitorizacion ligera.

Hashes

Representar un objeto de usuario pequeno

HSET user:42 name "Ana" role "admin" plan "pro"
HGET user:42 name
HGETALL user:42

Los hashes son utiles cuando varios campos pertenecen a una misma clave y no necesitas un registro relacional completo con joins.

Listas

Ejemplo de cola simple

LPUSH queue:emails "send-welcome:42"
LPUSH queue:emails "send-reset:18"
RPOP queue:emails

Una lista basta para muchos escenarios de cola simples, sobre todo en herramientas internas o jobs pequenos en segundo plano.

Patron practico

Rate limiting basico por IP

MULTI
INCR rate:ip:203.0.113.10
EXPIRE rate:ip:203.0.113.10 60
EXEC

La idea es directa: contar peticiones por IP y expirar la clave al minuto. Si el valor supera tu umbral, rechazas la peticion.

Verificacion y primeras comprobaciones

Tras la instalacion, la primera comprobacion util sigue siendo `redis-cli ping`. Si no responde `PONG`, revisa si el servicio esta levantado, si el puerto esta abierto y si tu host y puerto locales coinciden con los valores esperados.

Seguridad basica

La documentacion oficial de Redis avisa de no exponer una instancia sin endurecer a internet. En la practica, mantenlo detras de firewall, liga solo las interfaces que necesitas y configura autenticacion si clientes remotos deben conectarse.

Redis 8, busqueda y vectores

Redis ya puede cubrir mas que una cache simple: la documentacion de Redis Open Source incluye Redis Query Engine, JSON, busqueda vectorial y casos de AI/search. Es util para busqueda semantica, filtros por metadatos y recuperacion rapida, pero no elimina la necesidad de modelar limites de memoria, durabilidad y el papel de tu base principal.

Licencia y servicios gestionados

Redis 8 y posteriores se ofrecen bajo RSALv2, SSPLv1 o AGPLv3; Redis 7.2 y anteriores siguen bajo BSD-3-Clause. Valkey es relevante cuando necesitas compatibilidad con Redis OSS 7.2 dentro de otro proyecto y ecosistema. En proyectos de empresa, validalo con legal y con el proveedor gestionado que vayas a usar.

Decision sobre persistencia

Antes de usar Redis como algo mas que cache, decide si perder escrituras recientes es aceptable. Snapshots RDB, AOF y servicios Redis gestionados tienen compromisos distintos entre velocidad, durabilidad y complejidad operativa.

Eviction y memoria

Redis es rapido porque la memoria es el recurso principal. Configura maxmemory y una politica de eviction de forma intencionada; si no, el primer pico serio de trafico puede convertirse en una incidencia de produccion.