RocketMQ多Master模式的优缺点介绍
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,本篇内容介绍了"RocketMQ多Master模式的优缺点介绍"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学
千家信息网最后更新 2024年11月26日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安全错误
数据库的锁怎样保障安全
软件开发模型包括哪些问题
争当网络安全小卫士活动方案
金蝶软件开发使用语言
数据库schemas命令
没有网络安全设计信息系统
腾讯云服务器关闭安全
wamps如何安装数据库
网络安全三不依赖的原则
软件开发的三体系管理手册
网络安全教学新手
软件开发的特征类型
软件开发擅长介绍
吉林白城网络安全
网络安全不可抵赖性
软件开发的主要程序
数据安全和网络安全区别
实用网络技术实践报告
ubuntu数据库搜索的命令
承德市软件开发公司
德国网络安全规划2020
争当网络安全小卫士活动方案
网络安全是国家第五大
公司后台服务器管理方案
数据库查询字段语句
微信发图片服务器会保留吗
CIS选择数据库
数据库备份变大了一倍
海南英图互联网科技有限公司
中太服务器怎么样
最新网络安全风险 威胁等