Migração 100% grátis na contratação semestral · nossa equipe migra tudo de qualquer provedor · novos clientes Migrar agora
Agente de IA no WhatsApp na API Oficial da Meta · somos Tech Provider aprovado · orçamento sob consulta Pedir orçamento
VPS com OpenClaw pré-instalado · a partir de R$ 56,90/mês · gerenciada pela Rollin Quero a VPS
VPS com Hermes Agent pré-instalado · a partir de R$ 56,90/mês · gerenciada pela Rollin Quero a VPS
Hospedagem com 30 dias de garantia · Não gostou? Devolvemos 100%, sem perguntas. Ver hospedagem

n8n queue mode con Redis

Cómo configurar n8n en queue mode con Redis y workers separados para escalar workflows con LLMs y webhooks de alta concurrencia en producción.

En producción, ejecutar n8n en queue mode evita que un workflow lento (una llamada a un LLM de 30s, por ejemplo) trabe toda la cola de webhooks.

Arquitectura

Webhook ──▶ n8n main (HTTP) ──▶ Redis (cola) ──▶ n8n worker(s) ──▶ Postgres
  • main: recibe el webhook, lo encola y devuelve 200 de inmediato
  • worker: toma de la cola, ejecuta y persiste en Postgres
  • Redis: broker de la cola (BullMQ por debajo)

Requisitos previos

  • Postgres 14+ (recomendado: contenedor o servicio externo)
  • Redis 7+
  • VPS con 4+ vCPU y 8 GB de RAM

docker-compose.yml mínimo

services:
  postgres:
    image: postgres:16
    environment:
      POSTGRES_USER: n8n
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
      POSTGRES_DB: n8n
    volumes:
      - pg_data:/var/lib/postgresql/data
    restart: unless-stopped

  redis:
    image: redis:7-alpine
    restart: unless-stopped

  n8n-main:
    image: docker.n8n.io/n8nio/n8n
    environment:
      EXECUTIONS_MODE: queue
      QUEUE_BULL_REDIS_HOST: redis
      DB_TYPE: postgresdb
      DB_POSTGRESDB_HOST: postgres
      DB_POSTGRESDB_USER: n8n
      DB_POSTGRESDB_PASSWORD: ${POSTGRES_PASSWORD}
      DB_POSTGRESDB_DATABASE: n8n
      N8N_HOST: n8n.exemplo.com
      WEBHOOK_URL: https://n8n.exemplo.com/
      N8N_PROTOCOL: https
      N8N_ENCRYPTION_KEY: ${N8N_ENCRYPTION_KEY}
    ports:
      - "5678:5678"
    depends_on: [postgres, redis]
    restart: unless-stopped

  n8n-worker:
    image: docker.n8n.io/n8nio/n8n
    command: worker
    environment:
      EXECUTIONS_MODE: queue
      QUEUE_BULL_REDIS_HOST: redis
      DB_TYPE: postgresdb
      DB_POSTGRESDB_HOST: postgres
      DB_POSTGRESDB_USER: n8n
      DB_POSTGRESDB_PASSWORD: ${POSTGRES_PASSWORD}
      DB_POSTGRESDB_DATABASE: n8n
      N8N_ENCRYPTION_KEY: ${N8N_ENCRYPTION_KEY}
    depends_on: [postgres, redis]
    restart: unless-stopped

volumes:
  pg_data:

Escalar workers

Para más throughput, escala solo los workers:

docker compose up -d --scale n8n-worker=4

Cada worker toma 1 job a la vez por defecto. Para jobs ligeros (sin LLM), sube N8N_CONCURRENCY=10 por worker.

Cómo saber si está funcionando

Busca este log en los workers al iniciar:

n8n Task Broker is now accepting connections on port 5679
n8n worker is now ready
- version: 1.x.x
- concurrency: 10

Y en el main:

Editor is now accessible via:
https://n8n.exemplo.com/

Monitoreo

Se recomienda exponer métricas de BullMQ vía /metrics (Prometheus) y graficarlas en Grafana:

  • Jobs activos / en espera / completados
  • Tiempo promedio de ejecución por workflow
  • Fallas por hora

Próximos pasos

Última actualización: