17 Rocketmq集群双主双从同步搭建
Posted java1234_小锋
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了17 Rocketmq集群双主双从同步搭建相关的知识,希望对你有一定的参考价值。
我们企业级开发,一般采用的是双主双从同步,以及异步刷盘;
同步消息保证消息不丢失,异步刷盘提高吞吐量;
我们VM里再克隆两台机器;
192.168.0.110 机器 作为m1主节点
192.168.0.103 机器作为s1从节点
192.168.0.111 机器 作为m2主节点
192.168.0.112 机器作为s2从节点
首先,我们把namesrvAddr配置修改,每个broker
都要注册到所有nameserver
;
namesrvAddr=192.168.0.110:9876;192.168.0.103:9876;192.168.0.111:9876;192.168.0.112:9876;
刷盘机制都改成异步:
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
192.168.0.111 机器 作为m2主节点从m1主节点的broker-a.properties
复制内容到broker-b.properties
文件;
修改broker-b.properties
配置文件;
修改内容如下:
brokerName=broker-b
192.168.0.112 机器 作为s2主节点从s1主节点的broker-a-s.properties
复制内容到broker-b-s.properties
文件;
修改broker-b-s.properties
配置文件;
修改内容如下:
brokerName=broker-b
然后分别启动四个机器;
先启动nameserver:
nohup sh mqnamesrv &
再启动broker:
192.168.0.110 机器 作为m1主节点
nohup sh mqbroker -c /home/mq/rocketmq/conf/2m-2s-sync/broker-a.properties &
192.168.0.103 机器作为s1从节点
nohup sh mqbroker -c /home/mq/rocketmq/conf/2m-2s-sync/broker-a-s.properties &
192.168.0.111 机器 作为m2主节点
nohup sh mqbroker -c /home/mq/rocketmq/conf/2m-2s-sync/broker-b.properties &
192.168.0.112 机器作为s2从节点
nohup sh mqbroker -c /home/mq/rocketmq/conf/2m-2s-sync/broker-b-s.properties &
可视化控制台项目namesrvAddr配置改下:
启动控制台项目:
项目代码,生产端和消费端name-server都改下;
启动测试:
两个主节点一起分担消息处理;
我们模拟下,让a主节点broker挂掉;
sh mqshutdown broker
再运行代码测试,发现b主节点承担了所有消息接收和处理;实现了高可用;
说明:这个是锋哥的RocketMQ备课笔记,等备课完,会发布配套的视频教程,如有需要,可以先加锋哥WX:java1239 欢迎白嫖
以上是关于17 Rocketmq集群双主双从同步搭建的主要内容,如果未能解决你的问题,请参考以下文章