RocketMQ的集群模式

举报
JavaEdge 发表于 2021/06/04 00:10:48 2021/06/04
【摘要】 1 单点(不推荐) 优点 除了配置简单没什么优点,适合个人学习使用。缺点 不可靠,该机器重启或宕机,将导致整个服务不可用。无 HA,测试环境玩玩就行。 2 主从 主节点可收发消息,从节点不能接收消息。 具备 HA。不支持主从切换。 3 双主(不推荐) 多个 master 节点组成集群,单个 master 节点宕机或者重启对应用没有影响。 优点 所有模式中性能...

1 单点(不推荐)

  • 优点
    除了配置简单没什么优点,适合个人学习使用。
  • 缺点
    不可靠,该机器重启或宕机,将导致整个服务不可用。无 HA,测试环境玩玩就行。

2 主从

主节点可收发消息,从节点不能接收消息。
具备 HA。不支持主从切换。

3 双主(不推荐)

多个 master 节点组成集群,单个 master 节点宕机或者重启对应用没有影响。

  • 优点
    所有模式中性能最高
  • 缺点
    单个 master 节点宕机期间,未被消费的消息在节点恢复之前不可用,消息的实时性就受到影响。

注意:使用同步刷盘可以保证消息不丢失,同时 Topic 相对应的 queue 应该分布在集群中各个节点,而不是只在某各节点上,否则,该节点宕机会对订阅该 topic 的应用造成影响。

4 双主双从、多主多从

  • 双主双从

多 master 多 slave 异步复制

在多 master 模式的基础上,每个 master 节点都有至少一个对应的 slave。master节点可读可写,但是 slave 只能读不能写,类似于 mysql 的主备模式。

  • 优点
    在 master 宕机时,消费者可以从 slave读取消息,消息的实时性不会受影响,性能几乎和多 master 一样。
  • 缺点
    使用异步复制的同步方式有可能会有消息丢失的问题。

多 master 多 slave 同步双写

同多 master 多 slave 异步复制模式类似,区别在于 master 和 slave 之间的数据同步方式。

  • 优点
    同步双写的同步模式能保证数据不丢失。

  • 缺点
    发送单个消息 RT 会略长,性能相比异步复制低10%左右。

  • 刷盘策略
    同步刷盘和异步刷盘(指的是节点自身数据是同步还是异步存储)

  • 同步方式
    同步双写和异步复制(指的一组 master 和 slave 之间数据的同步)

注意:要保证数据可靠,需采用同步刷盘和同步双写的方式,但性能会较其他方式低。

文章来源: javaedge.blog.csdn.net,作者:JavaEdge.,版权归原作者所有,如需转载,请联系作者。

原文链接:javaedge.blog.csdn.net/article/details/108932528

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。