Redis não é geralmente implantado como um armazenamento de dados "durável" (no sentido do "D" em ACID.), mesmo com registro no diário. A maioria dos casos de uso sacrifica intencionalmente um pouco de durabilidade em troca de velocidade.
No entanto, o modo de armazenamento "anexar apenas arquivo" pode ser configurado opcionalmente para operar de maneira durável, ao custo de desempenho. Ele terá que pagar por um fsync() em cada modificação. Para configurar isso, defina estas duas opções em seu arquivo .conf:
appendonly yes
appendfsync always
Dos documentos:Qual é a durabilidade do arquivo somente anexado?
Verifique redis.conf, você pode configurar quantas vezes o Redis irá fsync() dados no disco. Existem três opções:
- Fsync() toda vez que um novo comando é anexado ao arquivo de log anexado. Muito, muito lento, muito seguro.
- Fsync() uma vez a cada segundo. Rápido o suficiente, e você pode perder 1 segundo de dados se houver um desastre.
- Nunca use fsync(), apenas coloque seus dados nas mãos do Sistema Operacional. O método mais rápido e inseguro.
(Observe que o padrão para appendfsync no arquivo de configuração enviado com o Redis pós-2.0.0 é
everysec
, e não always
.)