首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从RDB加载并继续编写AOF。

从RDB加载并继续编写AOF。
EN

Stack Overflow用户
提问于 2020-08-16 11:45:13
回答 1查看 2.3K关注 0票数 0

我在mod + AOF中工作。

我正在寻找一种从RDB文件重新启动后加载的方法--主要用于快速重新启动。

除此之外,我还想继续写AOF。

一旦我知道有一个灾难,我将手动从AOF加载。

这是我当前的配置:(我知道appendonly yes说重启后将加载AOF,我正在寻找来自RDB的等待加载,并继续编写AOF。)

代码语言:javascript
复制
aof-use-rdb-preamble yes
aof-load-truncated yes
aof-rewrite-incremental-fsync yes
appendfilename "appendonly.aof"
appendfsync everysec
appendonly yes

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-16 19:19:26

如果启用了AOF,Redis将始终加载AOF,因为AOF提供了更好的耐用性。

通过使用aof-use-rdb-preamble yes,您已经获得了这两个世界的优势。您的AOF会不时地自动重写,首先是一个RDB文件,另一个是AOF尾。见redis.conf L1157

由于您希望有一个可预测的平均恢复时间(MTTR),因此需要调整参数,以便自动重写AOF,如redis.conf LL113中所述。

代码语言:javascript
复制
auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

您还可以使用BGREWRITEAOF command手动触发a重写。

即使将BGREWRITEAOF配置为no,也可以使用appendonly。但是,请注意,每次调用BGREWRITEAOF时,几乎都会在appendonly.aof文件中得到一个rdb文件。

然后,如果将appendonly配置为yes,您还会得到一个appendonly.aof尾(命令被追加到appendonly.aof文件中)。

BGREWRITEAOFBGSAVE是昂贵的操作,在运行时会降低服务器的性能。因此,我建议您只使用AOF,这已经使您可以自动地或每次运行BGREWRITEAOF时对日志进行压缩。

您可以将auto-aof-rewrite-percentage设置为低值,例如2%或5%。然后,可以使用这两种策略测试MTTR (重新启动所需的时间)。我相信你会发现两者之间的差别太小,没有必要将这两种策略分开(RDB和AOF)。AOF已经给出了RDB-inside if aof-use-rdb-preamble yes

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63436459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档