搭建RocketMQ服务-多Master多Slave模式

前言

RocketMQ 集群部署模式

  1. 单 master 模式
    也就是只有一个 master 节点,如果master节点挂掉了,会导致整个服务不可用,线上不宜使用,适合个人学习使用。
  2. 多 master 模式
    多个 master 节点组成集群,单个 master 节点宕机或者重启对应用没有影响。
    优点:所有模式中性能最高
    缺点:单个 master 节点宕机期间,未被消费的消息在节点恢复之前不可用,消息的实时性就受到影响。
    注意:使用同步刷盘可以保证消息不丢失,同时 Topic 相对应的 queue 应该分布在集群中各个节点,而不是只在某各节点上,否则,该节点宕机会对订阅该 topic 的应用造成影响。
  3. 多 master 多 slave 异步复制模式
    在多 master 模式的基础上,每个 master 节点都有至少一个对应的 slave。master
    节点可读可写,但是 slave 只能读不能写,类似于 mysql 的主备模式。
    优点: 在 master 宕机时,消费者可以从 slave 读取消息,消息的实时性不会受影响,性能几乎和多 master 一样。
    缺点:使用异步复制的同步方式有可能会有消息丢失的问题。
  4. 多 master 多 slave 同步双写模式
    同多 master 多 slave 异步复制模式类似,区别在于 master 和 slave 之间的数据同步方式。
    优点:同步双写的同步模式能保证数据不丢失。
    缺点:发送单个消息 RT 会略长,性能相比异步复制低10%左右。
    刷盘策略:同步刷盘和异步刷盘(指的是节点自身数据是同步还是异步存储)
    同步方式:同步双写和异步复制(指的一组 master 和 slave 之间数据的同步)
    注意:要保证数据可靠,需采用同步刷盘和同步双写的方式,但性能会较其他方式低。

以上片段截取自-RocketMQ 实战之快速入门

本门我们采用多Master多Slave模式

1.创建虚拟机

    我们这次就模拟两个Master和两个Slave,也就是两主两从,我们需要准备4台虚拟机,这里给出我自己的虚拟机配置(由于电脑太垃圾配置只能降低):

    

    系统:Centos 7

    我们准备一个MasterWJD主节点,和一个MasterWJD-Slave从节点;还有一个MasterLX主节点,和一个MasterLX-Slave从节点。

    四台虚拟机的Ip地址为:MasterWJD               ---->>     192.168.85.130 (根据你自己的虚拟机IP改)

                                           MasterWJD-Slave     ---->>     192.168.85.132                     同上

                                           MasterLX                   ---->>     192.168.85.133                     同上

                                           

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值