RabbitMQ普通集群和镜像集群有什么区别?怎么选择?

老敏吖_4610

老敏吖_4610

2026-06-07

853人浏览

原创

镜像集群能防止单点故障,普通集群不能;镜像集群需显式配置策略同步消息,代价是带宽与磁盘开销增加,且自rabbitmq 3.8.0起已被标记为deprecated,推荐使用quorum queue替代。

rabbitmq普通集群和镜像集群有什么区别?怎么选择?

普通集群不能防止单点故障,镜像集群能,但代价是带宽和磁盘占用翻倍——选哪个,取决于你能不能接受消息丢失、愿不愿意为高可用多付两台机器的钱。

普通集群只同步元数据,不复制消息

队列的名称、绑定关系、vHost 权限这些会在所有节点间自动同步,但 queue 里实际的消息只存放在创建它的那个节点上。其他节点查到这个队列不在本地,就会转发请求过去,相当于“远程调用”。

  • 客户端连任意节点发消息,最终都落到主节点存储
  • 主节点宕机后,该队列立刻不可用;即使开了持久化,也要等它恢复才能继续消费
  • 没有自动故障转移,也没有副本,rabbitmqctl cluster_status 显示节点都在线,但某个队列可能已“失联”
  • 适合日志上报、埋点统计这类允许少量丢失、读多写少的场景

镜像集群靠策略触发消息同步,不是默认行为

普通集群搭好后,镜像功能是关着的。必须显式配置 ha-modeha-sync-mode 等策略,RabbitMQ 才会把匹配的队列复制到多个节点。

RabbitMQ 4.2.3
RabbitMQ 4.2.3

RabbitMQ 4.2.3 是 2026 年初发布的重要稳定更新版本,重点修复了 Khepri 元数据存储相关问题,并改进了监控性能。对于使用 Docker、Kubernetes 或微服务架构的开发团队来说,该版本兼容性和稳定性表现较好。

下载
  • 策略生效范围由正则匹配队列名决定,比如 ^order\. 只镜像订单相关队列
  • ha-mode: exactly 指定副本数(如 3),ha-mode: all 表示所有节点都存一份,但节点增减时需手动重同步
  • 同步是异步的,ha-sync-mode: automatic 会让新镜像节点自动追平,manual 则要人工触发 rabbitmqctl sync_queue
  • 主节点挂了,镜像节点秒级选举新主,消费者无感知——但注意:未确认消息(unack)可能重复投递

3.12+ 版本起,镜像集群已被标记为 deprecated

官方文档明确写着“mirrored queues is deprecated since 3.8.0, replaced by quorum queues”。这不是建议,是事实:Erlang 层面的同步机制存在脑裂风险,Raft 协议的 quorum queue 才是当前生产首选。

  • 如果你用的是 RabbitMQ 3.12 或更新版本,mirrored_queue 策略仍能工作,但管理界面里已不显示“镜像”选项,命令行也只保留兼容性支持
  • 新建集群应直接用 quorum queue:创建时指定 x-queue-type: quorum,无需额外策略,自带强一致和自动故障恢复
  • 老项目升级时,别强行把 mirrored 改成 quorum,因为二者不兼容——得停业务、导出消息、重建队列

真正容易被忽略的点是:镜像策略只对新声明的队列生效。已经存在的队列不会自动被镜像,哪怕你后来加了策略。上线前务必用 rabbitmqadmin list queues name policy 检查每条队列是否命中策略,而不是只看策略本身是否存在。

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

417

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

820

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

2412

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

816

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

709

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

374

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2156

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

3972

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

647

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
RabbitMQ 入门教程
RabbitMQ 入门教程

共0课时 | 123人学习

RabbitMQ 教程手册
RabbitMQ 教程手册

共0课时 | 0人学习

RabbitMQ 官方文档
RabbitMQ 官方文档

共0课时 | 0人学习