Redis RDB ou AOF: como escolher persistência

Ilustração técnica sobre Redis RDB ou AOF: como escolher persistência
Ilustração sobre Redis RDB ou AOF: como escolher persistência

Resposta Rápida / TL;DR

Use RDB quando snapshots e menor custo forem suficientes; considere AOF quando a durabilidade das operações for mais importante e teste a carga de reescrita.
Índice do artigo

    Resposta rápida

    RDB grava snapshots do dataset em intervalos; AOF registra operações de escrita e pode reduzir a janela de perda, com custo adicional de I/O e reescrita. Se Redis guarda apenas cache, perder dados pode ser aceitável. Se ele contém estado de fila ou sessão importante, trate a durabilidade como requisito explícito.

    Comece pelo papel do Redis

    Liste as chaves e classifique-as: cache reconstruível, sessão, fila, rate limit ou dado principal. Redis não deve virar banco definitivo por acidente. A configuração correta para cache pode ser insuficiente para uma fila de processamento.

    RDB: snapshots

    RDB cria um arquivo compacto em pontos definidos. É simples de transportar e costuma reduzir o volume de escrita contínua, mas uma falha entre snapshots pode perder operações recentes. Defina save conforme a tolerância do sistema e monitore a criação do arquivo.

    AOF: operações registradas

    AOF registra comandos de escrita e oferece políticas de sincronização. appendfsync everysec, por exemplo, prioriza equilíbrio, enquanto sincronização a cada comando aumenta o custo. O arquivo precisa de reescrita para não crescer indefinidamente.

    Teste os dois cenários

    Em um ambiente de teste, carregue chaves representativas, force um snapshot ou AOF, encerre o processo e reinicie com o volume montado. Depois compare:

    redis-cli INFO persistence
    redis-cli DBSIZE
    redis-cli GET chave-de-teste
    

    Observe tempo de recuperação, tamanho do arquivo, uso de I/O e comportamento durante reescrita. Faça o teste com carga semelhante à operação prevista.

    Proteja o volume

    Persistência no mesmo volume do sistema não protege contra sua perda. Use armazenamento persistente, permissões restritas, backup externo e monitore espaço. Não exponha Redis diretamente à internet; restrinja rede e autenticação.

    Também registre a versão do Redis e o arquivo de configuração usado no teste.

    Para filas e integrações, a VPS para Redis precisa ser dimensionada para memória, I/O e crescimento do dataset.

    Checklist

    • [ ] Cada chave tem classificação de risco.
    • [ ] Perda aceitável está documentada.
    • [ ] RDB/AOF foi testado após reinício.
    • [ ] Reescrita e espaço são monitorados.
    • [ ] Backup fica fora do volume principal.

    FAQ

    AOF elimina perda de dados?

    Não. A política de sincronização, o sistema de arquivos e a falha considerada definem a janela real.

    RDB e AOF podem ser usados juntos?

    Versões do Redis suportam combinações, mas avalie custo, comportamento de recuperação e política da versão instalada.

    Perguntas para a escolha

    Qual é a perda máxima aceitável? O dataset cabe confortavelmente na memória durante uma reescrita? Há espaço para arquivo temporário e backup? A aplicação consegue reconstruir cache? Responder essas perguntas é mais útil do que copiar uma configuração pronta. Em todos os casos, teste desligamento abrupto em ambiente separado e confira se o volume persistente foi realmente montado; persistência configurada em um caminho efêmero produz uma falsa sensação de segurança.

    Download Gratuito Template Pronto para n8n & Evolution API

    📦 Template n8n: Agente de IA com WhatsApp + Evolution API

    Baixe o arquivo JSON pronto para importar: Webhook configurado, tratamento de remetente, nó de OpenAI e disparo via Evolution API.

    Comentários (8)

    Fernanda Lopes - Digital Agency

    Excelente artigo sobre indexação e explain analyze. Descobrimos um sequential scan que estava travando o banco nos horários de pico.

    Fernanda Martins - Consultoria TI

    Muito bom o comparativo entre bancos relacionais e vetoriais para aplicações de busca semântica. Ajudou muito na escolha da arquitetura.

    João Vieira

    As regras de connection pooling com PgBouncer reduziram drasticamente a sobrecarga de conexões no servidor.

    Carolina Ferreira - SRE Squad

    Implementei o backup contínuo com pg_dump e criptografia para bucket S3. Dormindo muito mais tranquilo agora! Você tem algum material mais avançado sobre esse tema?

    Ana Lima

    Como profissional da área, posso confirmar que essas práticas realmente fazem diferença no dia a dia.

    Fernando Costa - Startup X

    Excelente conteúdo! Aprendi conceitos que não encontrava em outros lugares em português.

    Carlos Ferreira

    Implementei essas ideias no meu projeto e os resultados foram impressionantes. Obrigado pelo conhecimento compartilhado! Será que isso funciona também com [tecnologia relacionada]?

    Maria Costa

    Artigo muito bem escrito e explicativo! Já compartilhei com toda a equipe da empresa.

    ← Voltar para o blog