Rabbitmq 在杀死节点后丢失持久消息

Rabbitmq 在杀死节点后丢失持久消息

我已经创建了一个持久队列(在 2 个镜像节点上,ha 模式:自动)。我已将消息放入其中,传递模式 = 2。- 在 UI 上,我可以看到队列是持久的 (D),消息在队列中,并且是持久的。- mnesia 位置作为卷附加。- 我可以看到 0.rdq 文件不为空。

可以推测这些消息已被保存到磁盘中。

之后,我用docker kill掉了两个节点。当我再次启动节点时,所有消息都消失了。

还有其他设置可以让这次灾难模拟后不丢失消息吗?

Rabbitmq版本:3.7.8

谢谢!

答案1

得到了解决方案:必须创建 advanced.config 文件并将queue_index_max_journal_entries 设置为需要的。

相关内容