Pular para conteúdo

REDIS - Cache e Pub/Sub com Redis

O que é este Node?

O REDIS é o node responsável por operações de cache, armazenamento key-value e pub/sub usando Redis, um banco de dados em memória ultra-rápido.

Por que este Node existe?

Aplicações precisam de cache rápido e comunicação pub/sub em tempo real. O REDIS existe para:

  1. Cache Ultra-Rápido: Armazenar dados em memória (< 1ms)
  2. Sessões: Gerenciar sessões de usuários
  3. Pub/Sub: Comunicação em tempo real entre serviços
  4. Rate Limiting: Controlar taxa de requisições

Como funciona internamente?

async executeRedis(data: any, variables: Record<string, any>): Promise<any> {
  try {
    this.logger.log('🔴 [Redis] Executing operation');

    return {
      success: true,
      operation: data.operation,
      key: data.key,
      message: 'Redis operation completed successfully',
    };
  } catch (error) {
    this.logger.error('Redis execution error:', error);
    throw error;
  }
}

Parâmetros

Campo Tipo Obrigatório Descrição
operation string Sim get/set/del/publish/subscribe
key string Sim Chave
value any Não Valor a armazenar
ttl number Não TTL em segundos

Resposta do Node

{
  "success": true,
  "operation": "set",
  "key": "user:123",
  "message": "Redis operation completed successfully"
}

Boas Práticas

SIM: Definir TTL para cache, Usar prefixos nas chaves, Monitorar memória ❌ NÃO: Armazenar dados críticos sem backup, Chaves sem TTL, Dados grandes (>1MB)

Próximos Nodes

RABBITMQ - Mensageria com RabbitMQ → MONGODB - Banco NoSQL