当前位置: 首页 > 知识库问答 >
问题:

redis-从RDB加载并继续写入AOF

卢志强
2023-03-14

我在联合mod-RDB AOF中工作<我正在寻找一种从RDB文件重新启动后加载的方法-主要用于快速重启<除此之外,我想继续编写AOF<一旦我知道发生了灾难,我会手动从AOF加载<这是我当前的配置:(我知道appendonly yes是说AOF将在重启后加载,我正在从RDB中寻找等待加载并继续写入AOF。)

aof-use-rdb-preamble yes
aof-load-truncated yes
aof-rewrite-incremental-fsync yes
appendfilename "appendonly.aof"
appendfsync everysec
appendonly yes

谢谢

共有1个答案

刘焱
2023-03-14

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

通过使用aof use rdb preamble是,您已经在两全其美了。您的AOF会不时自动重写,首先是RDB文件,然后是AOF尾部。请参见redis。形态L1157。

由于您希望有一个可预测的平均恢复时间(MTTR),您希望调整自动重写AOF的参数,如redis.confLL113中所述

auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

您还可以使用BGREWRITEAOF命令手动触发AOF重写

BGREWRITEAOF即使appendOnlyhtml" target="_blank">配置为no也可以工作。但是,请注意,每次调用BGREWRITEAOF时,您都会在appendonly.aof文件中获得一个rdb文件。

然后,如果将appendonly配置为yes,您也会得到一个AOF尾部(命令被附加到appendonly.AOF文件)。

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

您可以将自动aof重写百分比设置为较低的值,例如2%或5%。然后,您可以使用这两种策略测试MTTR(重新启动所需的时间)。我相信您会发现差异太小,无法将这两种策略(RDB和AOF)单独结合起来。如果AOF使用RDB前导码,则AOF已经在内部提供RDB

 类似资料:
  • 我们有一个使用默认配置运行但启用了AOF的Redis服务器。出于性能原因,我们希望禁用AOF,而只使用RDB。 如果我们使用重新启动Redis实例,所有键都将丢失。谢天谢地,使用再次重新启动会将我们的数据返回给我们。 redis文档展示了如何从RDB迁移到AOF,但是从AOF迁移到RDB的正确方法是什么?

  • java-redis-rdb 是一个用来解析 Redis 的 dump.rdb 文件的 Java 开发包。

  • Redis rdb CLI 是一种可以解析、过滤、拆分、合并 rdb 并离线分析内存使用情况的工具。 运行时依赖 jdk 1.8+ 安装 wget https://github.com/leonchen83/redis-cli-tool/releases/download/v0.1.3/redis-cli-tool.zipunzip redis-cli-tool.zipsudo chmod -R 

  • 我有一个运行在Laravel5.2框架上的web应用程序,会话驱动程序设置为redis,并遵循AWS设置。 > 实例-1:运行Web应用程序,. env文件中的Redis配置如下 Redis主机:aws-private-ip-of-instance-2 实例2:运行以下配置的Redis服务器 绑定AWS-私有ip-实例2和127.0.0.1 工作目录具有775权限,ower-group是redis

  • 问题内容: 我想知道是否有可能保存经过部分训练的Keras模型并在再次加载模型后继续进行训练。 这样做的原因是,将来我将拥有更多的训练数据,并且我不想再次对整个模型进行训练。 我正在使用的功能是: 编辑1:添加了完全正常的示例 对于10个纪元后的第一个数据集,最后一个纪元的损失将为0.0748,精度为0.9863。 保存,删除和重新加载模型后,第二个数据集上训练的模型的损失和准确性分别为0.171

  • 我正在使用的来创建更好的NER模型。根据这篇文章,我使用了mark g发布的代码: 它也会运行,但我的输出会在以下时间停止: 但在帖子中的例子中,应该进一步如下: 有人能帮我解决这个问题,这样我就可以生成一个模型了吗?我找了很多,但找不到任何关于它的好文件。非常感谢,谢谢。