Redis
Descripción
Sección titulada «Descripción»El nodo Redis se conecta a un servidor Redis y ejecuta una operación sobre una clave: leer o escribir valores, borrarlos, incrementarlos o decrementarlos, comprobar su existencia, listar claves por patrón o publicar en un canal. Es útil para cachear resultados, mantener contadores, coordinar procesos o enviar mensajes entre workflows.
Es equivalente al nodo Redis de n8n.
El nodo abre la conexión al inicio, ejecuta la operación y cierra la conexión al terminar. Todos los campos de conexión y la clave/valor soportan variables dinámicas.
Configuración
Sección titulada «Configuración»Parámetros
Sección titulada «Parámetros»| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| host | text | Sí | Host del servidor Redis. Ejemplo: 127.0.0.1 |
| port | number | No | Puerto del servidor. Por defecto 6379 |
| password | text | No | Contraseña del servidor (si aplica) |
| db | number | No | Número de base de datos Redis. Por defecto 0 |
| operation | select | Sí | Operación: get, set, delete, incr, decr, exists, keys, publish |
| key | text | Sí | Clave (get/set/delete/incr/decr/exists), patrón (keys) o canal (publish) |
| value | textarea | No | Valor a escribir o mensaje a publicar (solo set / publish) |
| ttl | number | No | TTL en segundos para la clave (solo set). Si es mayor que 0, la clave expira |
| outputKey | text | No | Nombre del campo donde se guarda el resultado. Por defecto redis |
El nodo agrega el resultado de la operación al data en el campo indicado por outputKey (por defecto redis). El valor depende de la operación:
{ "user_id": 42, "redis": "OK"}Valores devueltos por operación:
| Operación | Resultado |
|---|---|
get | Valor de la clave (o null si no existe) |
set | "OK" |
delete | Cantidad de claves borradas |
incr / decr | Nuevo valor numérico de la clave |
exists | 1 si existe, 0 si no |
keys | Array de claves que coinciden con el patrón |
publish | Cantidad de suscriptores que recibieron el mensaje |
Ejemplos de Uso
Sección titulada «Ejemplos de Uso»Guardar un valor con expiración (cache)
Sección titulada «Guardar un valor con expiración (cache)»{ "label": "Cachear token", "host": "127.0.0.1", "operation": "set", "key": "token:{{data.user_id}}", "value": "{{data.access_token}}", "ttl": "3600", "outputKey": "cache_result"}Guarda el token con una expiración de 1 hora.
Leer un valor de cache
Sección titulada «Leer un valor de cache»{ "label": "Leer token", "host": "127.0.0.1", "operation": "get", "key": "token:{{data.user_id}}", "outputKey": "token"}Incrementar un contador
Sección titulada «Incrementar un contador»{ "label": "Contar visitas", "host": "127.0.0.1", "operation": "incr", "key": "visitas:home", "outputKey": "total_visitas"}Publicar en un canal
Sección titulada «Publicar en un canal»{ "label": "Notificar", "host": "127.0.0.1", "operation": "publish", "key": "notificaciones", "value": "{{data.mensaje}}"}- Si la operación no es una de las soportadas, el nodo devuelve un error descriptivo
- Para
keys, si no se indica patrón se usa*(todas las claves); usar con cuidado en bases grandes - Si el
datade entrada es un objeto, el resultado se agrega sin perder los campos existentes; si no lo es, se envuelve en{ value, [outputKey] } - La conexión usa
lazyConnect, timeout de conexión de 8 segundos y hasta 2 reintentos por petición - Los campos de conexión,
keyyvaluesoportan variables dinámicas:{{data.campo}},{{@NombreNodo.campo}} - No requiere credenciales del catálogo: los datos de conexión se indican en el propio nodo