RabbitMQ的高可用机制

通过搭建集群保证高可用

RabbitMQ的集群模式:

普通集群,镜像集群(开发时用的多),仲裁集群

普通集群(标准集群)会在各个节点间共享部分数据(交换机和队列元信息),但不包含队列里的消息;如果队列不在该节点,会从数据所在节点传递到当前节点并返回;当所在节点宕机,队列中的消息就会丢失。

镜像集群:本质是主从模式。

镜像集群特征如下:

交换机、队列、队列中的消息会在各个MQ的镜像节点之间同步备份。

创建队列的节点称为该队列的主节点,备份的其他节点叫该队列的镜像节点。

一个队列的主节点可能是另一个队列的镜像节点。

所有操作丢失主节点完成,然后同步给镜像节点(不然数据不就不一致了吗)

主节点宕机后,镜像节点会替代它成为新的主节点。保证了高可用性

数据还没有同步完成,主节点宕机了,就会造成数据丢失。所以采用仲裁队列。

仲裁集群

主从同步采用的Raft协议,强一致性。

相关推荐
Lugas Luo12 分钟前
DVR 存储工具深度分析报告 (测试与产品视角)
linux·嵌入式硬件·测试工具
杨云龙UP23 分钟前
ODA-Oracle实践记录:通过Navicat导出导入表CSV文件并清理重复数据,处理OA待办延迟刷新问题_20260416
linux·运维·服务器·数据库·sql·mysql·oracle
Oliver_LaVine39 分钟前
java项目启动报错:CreateProcess error=206, 文件名或扩展名太长
java·linux·jenkins
D4c-lovetrain1 小时前
Linux个人心得27 (redis哨兵模式实战)
linux·redis·bootstrap
楼田莉子2 小时前
Linux网络:IP协议
linux·服务器·网络·c++·学习·tcp/ip
wuminyu2 小时前
专家视角看JVM_StartThread
java·linux·c语言·jvm·c++
敲上瘾2 小时前
高并发内存池(三):PageCache(页缓存)的实现
linux·c++·缓存·高并发内存池·池化技术
Ops菜鸟(Xu JieHao)2 小时前
Linux 内网远程桌面Xrdp ~保姆级教程
linux·运维·服务器·windows·远程桌面·远程·xrdp
zjeweler2 小时前
linux服务器部署openclaw最新最细教程(非docker版)
linux·服务器·docker·openclaw
minglie12 小时前
zynq裸机和linux spidev操作W25Q16
linux