Redis——AOF持久化

标签 redis nosql

正如我们可以在 Redis 文档 ( http://redis.io/topics/persistence ) 中找到的那样,AOF Redis 有 3 个策略:

  • 完全没有fsync
  • 每秒同步一次
  • 在每次查询时同步

我不想在每次查询时都 fsync,因为在文档中说它非常慢。 但我的部分数据至关重要,我不能丢失它。是否可以使用每秒执行一次 fsync 的策略,但为给定命令显式调用 fsync,以确保它持久保存在磁盘上?

最佳答案

小说明:当与always 策略一起使用时,AOF 仅在write 查询后写入。

没有标准的方法或策略可以做到这一点,但您可以通过包装您的“关键写入”并在事务中调用 CONFIG SET 来解决这个问题,即:

SET key1 "redundant"
MULTI
CONFIG SET appendfsync always
SET key2 "crucial"
CONFIG SET appendfsync everysec
EXEC
SET key3 "transient"

我前段时间在 v2.8 中测试过它,它似乎可以工作,但是 YMMV ;)

关于Redis——AOF持久化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37568498/

相关文章:

nosql - Cassandra 数据模型

c# - RavenDB 和复合模式

amazon-ec2 - Redis 服务器报告 Reading from client : Connection reset on amazon ec2 c1. medium instance

node.js - Openshift redis 墨盒在 socket.io 脚本上出现奇怪的异常 ETIMEDOUT

mongodb - 在 MongoDB 中搜索数组并按匹配数排序

javascript - 在哈希键上使用键条件 'GE' 查询 dynamoDB

database - 什么类型的 NoSQL 数据库最适合存储分层数据?

javascript - 如何从Node获取多个Redis key的TTL

c# - Redis 插入哈希非常(!)慢?

看板和 Redis 的 Docker-Compose 错误