RabbitMQ-高可用机制

  1. 高可用机制主要通过一下三种集群模式实现:

普通集群、镜像集群、仲裁队列

  1. 普通集群

又名标准集群,特征如下:

① 会在集群的各个节点间共享部分数据,包括交换机、队列元数据。不包含队列中的消息

② 当访问集群的某个节点时,如果队列不在该节点,会从数据所在节点传递到当前节点并返回

③ 队列所在节点宕机,队列中的消息就会丢失,不能保证高可用

  1. 镜像集群

本质是主从模式,具备以下特征:

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

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

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

④ 所有操作都是主节点完成,然后同步给镜像节点

⑤ 主节点宕机后,镜像节点会替代成为新的主节点

  1. 仲裁队列

仲裁队列是3.8版本以后的新功能,用来替代镜像队列,特征如下:

① 与镜像队列一样,都是主从模式,支持数据主从同步

② 使用简单,无需复杂配置

③ 主从同步基于Raft协议,强一致

相关推荐
圆山猫5 小时前
[Virtualization](四):Linux KVM/RISC-V 的 vCPU 运行路径
java·linux·risc-v
城管不管5 小时前
ReAct、Plan-and-Execute、Reflection 三大智能 Agent 范式核心区别
java·人工智能·算法·spring·ai·动态规划
IT小白杨5 小时前
从环境制备到自动化工作流:多账号运营的工程化架构拆解
java·经验分享·自动化·安全架构·指纹浏览器
豆瓣鸡6 小时前
算法日记 - Day3
java·开发语言·算法
萧瑟余晖6 小时前
Java深入解析篇九之NIO详解
java·网络·nio
The Chosen One9856 小时前
高进度算法模板速记(待完善)
java·前端·算法
极光代码工作室9 小时前
基于SpringBoot的课程预约系统
java·springboot·web开发·后端开发
Leighteen9 小时前
`try-finally` 里的 `return`:为什么 `finally` 会悄悄改掉返回值、吞掉异常
java·开发语言
名字还没想好☜10 小时前
Go 的 time.After 在 select 循环里内存泄漏:定时器堆积原理与 timer.Reset 正确姿势
java·数据库·golang·go·goroutine
圆山猫10 小时前
[Virtualization](三):RISC-V H-extension 与 Guest 执行模式
android·java·risc-v