Redis - AOF持久性

时间:2016-06-01 12:20:54

标签: redis nosql

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

  • 根本没有fsync
  • 每天
  • fsync
  • 每个查询的fsync

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

1 个答案:

答案 0 :(得分:2)

轻微说明:与always政策一起使用时,仅在查询后才会写入AOF。

没有标准的方法或政策可以做到这一点,但你可以通过包装你的关键写作来解决这个问题。并在交易中拨打CONFIG SET,即:

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

我在前一段时间在v2.8中对此进行了测试,但它似乎可以工作,但是YMMV;)