rocketmq-集群搭建理论

一、集群搭建理论

1、数据复制策略与刷盘策略

复制策略

复制策略是Broker的Master与Slave的数据同步方式。

  • 同步复制:Message写到Master后,需要等待Slave同步成功后,才向Producer返回ACK。
  • 异步复制:Message写到Master后,Master立即向Producer返回ACK。

刷盘策略

刷盘策略是Broker中的数据落盘的方式。Message发送到Broker的内存后,持久化到磁盘的方式。

  • 同步刷盘:当Message持久化到磁盘后才算消息写入成功。
  • 异步刷盘:当Message写入到内存后就算成功,不需要等到持久化到磁盘。

2、Broker模式

单Master

只有一个Broker,这种存在单点问题。

多Master

Broker集群仅由多个Master构成,不存在Slave。同一个Topic的各个Queue平均分布在各个Master节点上。

优点:配置简单单个Master宕机或重启对应用没影响,性能最高。

缺点:单台机器宕机期间,这台机器上未消费的消息恢复之前不可订阅。

多Master多Slave-异步复制

Broker集群由多个Master构成,每个Master又配置了多个Slave(在配置磁盘阵列的情况下,一个Master一般配置一个Slave)。Master负责消息的读写请求,Slave负责消息的备份。

异步复制就是前面说的复制策略异步复制策略,即Message写入Master成功后,立即向Producer返回ACK

当Master宕机,Slave能自动切换Master。不过由于Slave从Master同步具有短暂的延迟,所以异步复制会存在少量消息丢失

多Master多Slave-同步双写

该模式是多Master多Slave模式的同步双写。同步双写是写入Master成功后,Master会等待Slave同步数据成功后,才向Producer返回ACK。

Master与Slave都要写入成功才返回ACK,就是双写

 

posted @   大鹏同学  阅读(57)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示