A persistência do Redis está disponível em dois tipos: RDB e AOF, e o padrão é a configuração de persistência do RDB
O RDB registra operações ao longo de um período de tempo, e a configuração de um disco é mantida após mais de um período de operação. AOF permite a persistência de toda operação.
Modo de persistência de snapshots
Snapshots são a forma padrão de persistir. Esse método consiste em gravar os dados na memória como um snapshot em um binário, e o nome padrão do arquivo é dump.rdb. Você pode configurar automaticamente o método de persistência do snapshot. Podemos configurar o Redis para tirar snapshots automaticamente se mais de m chaves forem modificadas em n segundos; a seguir está a configuração padrão de salvamento de snapshots
Salve 900 1 #900秒内如果超过1个key被修改, o save snapshot é iniciado Salve 300 10 #300秒内容如超过10个key被修改, o save snapshot é iniciado Salve 60 10000
Modo de persistência AOF
Para configurar o método, abra o arquivo de configuração Redis. Encontre o AppendOnly. O padrão é appendonly nº. Mudei para apenas apêndice, sim. Opções:
1、appendfsync no
Quando appendfsync está definido como não, o Redis não chama ativamente o fsync para sincronizar o conteúdo do log AOF com o disco, então tudo depende inteiramente da depuração do sistema operacional. Para a maioria dos sistemas operacionais Linux, o fsync é feito a cada 30 segundos para gravar dados do buffer no disco.
2、appendfsync cada sec
Quando appendfsync está definido como everysec, o Redis fará uma chamada fsync a cada segundo por padrão para gravar os dados no buffer no disco. No entanto, quando a chamada fsync dura mais de 1 segundo. A Redis vai pegar a política de atrasar o fsync e esperar mais um segundo. Ou seja, o fsync é realizado após dois segundos, e dessa vez o fsync será executado independentemente de quanto tempo ele seja executado. Neste momento, a operação de escrita atual será bloqueada porque o descritor do arquivo será bloqueado durante o fsync.
Então, o ponto principal é: na maioria dos casos, o Redis faz fsync a cada segundo. No pior cenário, uma operação fsync ocorrerá a cada dois segundos.
Essa operação é chamada de group commit na maioria dos sistemas de banco de dados, que é a combinação de dados de múltiplas operações de escrita e a gravação do log no disco ao mesmo tempo.
3、appednfsync sempre
Quando appendfsync está definido como sempre, fsync é chamado uma vez para cada operação de escrita, quando os dados são mais seguros e, claro, seu desempenho também é afetado porque fsync é realizado toda vez
O Appendfsync everysec é recomendado (padrão)
O modo snapshot pode ser ativado ao mesmo tempo que o modo AOF, não se afetam mutuamente
Redis desliga a persistência
Persistência de dados é uma característica que diferencia o Redis de outros caches e tem vantagens óbvias. Mas se eu não quiser que o Redis persista os dados agora, só quero usá-los como um cache, assim como o cache do memcache. Pesquisei na internet, e tudo apresentou como ativar a persistência do Redus, e havia muito pouco conteúdo sobre como desativar a persistência.
Modificar o arquivo de configuração Comente todas as informações de configuração salvas no arquivo de configuração da seguinte forma:
Ou modificar o arquivo de configuração da seguinte forma:
Após a conclusão da modificação, reinicie o serviço Redus.
Executar o comando de ação Sintaxe:
Após executar o comando, ele entra em vigor sem reiniciar o serviço.
|