You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RabbitMQ服务器崩溃后队列消息去向及Quorum Queue副本存储位置

RabbitMQ消息持久化与存储相关问题解答

服务器崩溃后队列消息的处理逻辑

消息是否会保留取决于消息和队列的持久化配置:

  • 若消息发布时设置了delivery_mode=2(持久化消息),且队列声明时durable=true(持久化队列),服务器崩溃重启后消息会被保留,因为数据已写入磁盘。
  • 若消息或队列任意一方未开启持久化,崩溃后消息会丢失,因为仅存在内存中,未落地存储。

持久化消息的存储位置

RabbitMQ的持久化数据(含持久化消息、队列元数据等)默认存储在节点的Mnesia数据目录,具体路径因环境而异:

  • Linux包安装:/var/lib/rabbitmq/mnesia/rabbit@<主机名>/
  • Windows系统:C:\Users\<用户名>\AppData\Roaming\RabbitMQ\db\rabbit@<主机名>/
  • Docker容器:未挂载卷时,路径为容器内的/var/lib/rabbitmq/mnesia/

Quorum Queue副本的存储位置

Quorum Queue的副本是分布式存储在集群节点上的:

  • 每个副本对应存储在集群中一个节点的Mnesia数据目录下(即上述单个节点的存储路径)
  • 副本不会集中在某一个节点,而是根据集群配置分散到多个节点,你无法在单个节点找到所有副本,每个节点仅存储自己负责的那部分副本数据

内容的提问来源于stack exchange,提问作者develop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 09:10:31