RocketMQ多Master模式的优缺点介绍
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,本篇内容介绍了"RocketMQ多Master模式的优缺点介绍"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学
千家信息网最后更新 2025年01月31日RocketMQ多Master模式的优缺点介绍
本篇内容介绍了"RocketMQ多Master模式的优缺点介绍"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
介绍:
多Master模式,一个集群无Slave,全是Master,例如2个Master或者3个Master。
优点:配置简单,单个Master宕机或重启维护对应用无影响,在磁盘配置为RAID10时,即使机器宕机不可恢复情况下,由于RAID10磁盘非常可靠,消息也不会丢(异步刷盘丢失少量消息,同步刷盘一条不丢)。性能最高。
缺点:单台机器宕机期间,这台机器上未被消费的消息在机器恢复之前不可订阅,消息实时性会收到影响
1. 服务器环境:
服务器A 192.168.192.130服务器B192.168.192.131
2.编辑服务器A和服务器B的hosts文件,添加同样的内容
vim /etc/hosts192.168.192.130 rocketmq-nameserver1192.168.192.130 rocketmq-master1192.168.192.131 rocketmq-nameserver2192.168.192.131 rocketmq-master2
3.重启一下两台机器的网卡并且两台服务器相互ping一下,看是否通
重启网卡$ service network restart#130上ping 131ping rocketmq-nameserver2ping rocketmq-master2#131上ping 130ping rocketmq-nameserver1ping rocketmq-master2
4. 上传alibaba-rocketmq-3.2.6.tar.gz 到两台服务器上面的/usr/local下解压,改名(两个服务器操作相同)
tar -vxzf alibaba-rocketmq-3.2.6.tar.gzmv alibaba-rocketmq-3.2.6 rocketmq
5.在两台服务器上面创建存储路径(两个服务器操作相同)
mkdir /usr/local/rocketmq/storemkdir /usr/local/rocketmq/store/commitlogmkdir /usr/local/rocketmq/store/consumequeuemkdir /usr/local/rocketmq/store/index
6.编辑两台服务器上面rocketmq的配置文件(两个服务器操作相同)
6.1 修改broker-a.properties文件
vim /usr/local/rocketmq/conf/2m-noslave/broker-a.properties#所属集群名字borkerClusterName=rocketmq-cluster#broker名字,注意此处不同的配置文件填写的不一样brokerName=broker-a#0 表示Master, >0 表示SlavebrokerId=0#nameServer地址,分号分割namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876#在发消息时,自动创建服务器不存在的topic,默认创建的队列数defaultTopicQueueNums=4#是否允许Broker自动创建Topic,建议线下开启,线上关闭autoCreateTopicEnable=true#是否允许Broker自动创建订阅组,建议线下开启,线上关闭autoCreateSubscriptionGroup=true#Broker 对外服务的监听端口listenPort=10911#删除文件时间点,默认凌晨4点deleteWhen=04#文件保留时间,默认48小时fileReservedTime=120#commitLog每个文件的大小默认1GmapedFileSizeCommitLog=1073741824#ConsumeQueue每个文件默认存30W条,根据业务情况调整mapedFileSizeConsumeQueue=300000#destroyMapedFileIntervalForcibly=120000#redeleteHangedFileInterval=120000#检测物理文件磁盘空间diskMaxUsedSpaceRatio=88#存储路径storePathRootDir=/usr/local/rocketmq/store#commitLog存储路径storePathCommitLog=/usr/local/rocketmq/store/commitlog#消费队列存储路径storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue#消息索引存储路径storePathIndex=/usr/local/rocketmq/store/index#checkpoint 文件存储路径storeCheckPoint=/usr/local/rocketmq/store/checkpoint#abort 文件存储路径abortFile=/usr/local/rocketmq/store/abort#限制的消息大小maxMessageSize=65536#flushCommitLogLeastPages=4#flushConsumeQueueLeastPages=2#flushCommitLogThoroughInterval=10000#flushConsumeQueueThoroughInterval=60000#Broker 的角色#- ASYNC_MASTER 异步复制Master#- SYNC_MASTER 同步双写Master#- SLAVEbrokerRole=ASYNC_MASTER#刷盘方式#- ASYNC_FLUSH 异步刷盘#- SYNC_FLUSH 同步刷盘flushDiskType=ASYNC_FLUSH#checkTransactionMessageEnable=false#发消息线程池数量#sendMessageThreadPoolNums=128#拉消息线程池数量#pullMessageThreadPoolNums=128
6.2 修改broker-b.properties文件
vim /usr/local/rocketmq/conf/2m-noslave/broker-b.properties#所属集群名字borkerClusterName=rocketmq-cluster#broker名字,注意此处不同的配置文件填写的不一样brokerName=broker-b#0 表示Master, >0 表示SlavebrokerId=0#nameServer地址,分号分割namesrvAddr=rocketmq-nameserver1:9876;rocketmq-nameserver2:9876#在发消息时,自动创建服务器不存在的topic,默认创建的队列数defaultTopicQueueNums=4#是否允许Broker自动创建Topic,建议线下开启,线上关闭autoCreateTopicEnable=true#是否允许Broker自动创建订阅组,建议线下开启,线上关闭autoCreateSubscriptionGroup=true#Broker 对外服务的监听端口listenPort=10911#删除文件时间点,默认凌晨4点deleteWhen=04#文件保留时间,默认48小时fileReservedTime=120#commitLog每个文件的大小默认1GmapedFileSizeCommitLog=1073741824#ConsumeQueue每个文件默认存30W条,根据业务情况调整mapedFileSizeConsumeQueue=300000#destroyMapedFileIntervalForcibly=120000#redeleteHangedFileInterval=120000#检测物理文件磁盘空间diskMaxUsedSpaceRatio=88#存储路径storePathRootDir=/usr/local/rocketmq/store#commitLog存储路径storePathCommitLog=/usr/local/rocketmq/store/commitlog#消费队列存储路径storePathConsumeQueue=/usr/local/rocketmq/store/consumequeue#消息索引存储路径storePathIndex=/usr/local/rocketmq/store/index#checkpoint 文件存储路径storeCheckPoint=/usr/local/rocketmq/store/checkpoint#abort 文件存储路径abortFile=/usr/local/rocketmq/store/abort#限制的消息大小maxMessageSize=65536#flushCommitLogLeastPages=4#flushConsumeQueueLeastPages=2#flushCommitLogThoroughInterval=10000#flushConsumeQueueThoroughInterval=60000#Broker 的角色#- ASYNC_MASTER 异步复制Master#- SYNC_MASTER 同步双写Master#- SLAVEbrokerRole=ASYNC_MASTER#刷盘方式#- ASYNC_FLUSH 异步刷盘#- SYNC_FLUSH 同步刷盘flushDiskType=ASYNC_FLUSH#checkTransactionMessageEnable=false#发消息线程池数量#sendMessageThreadPoolNums=128#拉消息线程池数量#pullMessageThreadPoolNums=128
7.修改两台机器的日志配置文件(两个服务器操作相同)
mkdir -p /usr/local/rocketmq/logscd /usr/local/rocketmq/conf && sed -i 's#${user.home}#/usr/local/rocketmq#g' *.xml
8.修改启动脚本参数,JVM调优(两个服务器操作相同)
#broker调优vim /usr/local/rocketmq/bin/runbroker.sh
#nameserver调优vim /usr/local/rocketmq/bin/runserver.sh
9.启动NameServer(两个服务器操作相同)
cd /usr/local/rocketmq/binnohup sh mqnamesrv &jps--看进程
10.启动BrokerServer A 服务器A
cd /usr/local/rocketmq/binnohup sh mqbroker -c /usr/local/rocketmq/conf/2m-noslave/broker-a.properties >/dev/null 2>&1 &netstat -ntlpjpstail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/broker.logtail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log
11.启动BrokerServer B 服务器B
cd /usr/local/rocketmq/binnohup sh mqbroker -c /usr/local/rocketmq/conf/2m-noslave/broker-b.properties >/dev/null 2>&1 &netstat -ntlpjpstail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/broker.logtail -f -n 500 /usr/local/rocketmq/logs/rocketmqlogs/namesrv.log
12. 停止broker命令
cd /usr/local/rocketmq/binsh mqshutdown broker
13.停止nameserver命令
sh bin/mqshutdown namesrv
14.rocketMq默认日志路径
/root/logs/rocketmqlogs
15.关闭防火墙
systemctl stop firewalld
"RocketMQ多Master模式的优缺点介绍"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
文件
服务
服务器
消息
路径
存储
相同
两个
机器
配置
同步
名字
大小
建议
情况
数量
时间
磁盘
线程
队列
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
大公司的网络安全员
外国服务器搞笑视频
高品质的服务器监控工具
武宣公安局网络安全保护
如何连接树莓派与数据库
印度为什么软件开发那么厉害
数据库挖掘哪三种分类
川大网络安全系
软件开发管理系统架构
万方网数据库查询
做软件开发去小城市怎么样
墨香服务器无引擎启动地图
找软件开发公司昆明
北京政府采购软件开发流程
福建无有网络技术有限公司招聘
卢龙县委网络安全
西电21年考研网络安全
软件开发价格数据表
软件开发教学软件有那些
现在学软件开发好
东土科技 工业互联网白皮书
软件开发前景好还是金融好
远程登录服务器多用户设置
宁夏软件开发哪家好
涉贷网络安全教育
中华人民共和国网络安全法自什么
宁河软件开发报价单
金山区企业网络技术咨询口碑推荐
腾讯云服务器怎么查看源码
网络安全绘画配图