rocketmq搭建
双主双从集群搭建
暂定两台机器
服务器A
nameserverA brokerA brokerB-slave
服务器B
nameserverB brokerB brokerA-slave
启动顺序
- 启动nameserver 服务(类似注册中心)
- 依次启动 brokerA 、brokerB、brokerA-slave 、 brokerB-slave
关闭顺序
- sh mqshutdown broker
- sh mqshutdown namesrv
依赖环境
- 64 位操作系统,Linux/ Unix/Mac OS
- 64位JDK 1.8
1、下载安装包
rocketmq-all-4.9.2-bin-release.zip
2、加压安装包
unzip rocketmq-all-4.9.2-bin-release.zip
3、默认配置修改
修改rocketmq/bin目录下 runbroker.sh 、runserver.sh jvm参数(按服务器内存大小适配置,官方推荐8g)
-
runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
-
runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g" JAVA_OPT="${JAVA_OPT} -XX:MaxDirectMemorySize=15g"
4、broker配置文件
#RocketMQ Name Server地址列表,多个NameServer地址用分号隔开
namesrvAddr=192.168.209.242:9876;192.168.209.243:9876
#集群名
rokerClusterName=game-rocketmq-cluster
brokerIP1=192.168.209.242
brokerName=broker-a
brokerId=0
#删除文件时间点,默认凌晨4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=48
#- ASYNC_MASTER 异步复制Master - SYNC_MASTER 同步双写Master - SLAVE
brokerRole=SYNC_MASTER
#- ASYNC_FLUSH 异步刷盘 SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
listenPort=10911
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=false
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#Broker 对外服务的监听端口
listenPort=10911
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#存储路径
storePathRootDir=/root/data/mq/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/root/data/mq/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/root/data/mq/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/root/data/mq/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/root/data/mq/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/root/data/mq/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#并发send线程数,多线程来发送消息可能会出现broker busy
sendMessageThreadPoolNums=128
useReentrantLockWhenPutMessage=true
#RocketMQ Name Server地址列表,多个NameServer地址用分号隔开
namesrvAddr=192.168.209.242:9876;192.168.209.243:9876
#集群名
rokerClusterName=game-rocketmq-cluster
brokerIP1=192.168.209.242
brokerName=broker-b
brokerId=1
#删除文件时间点,默认凌晨4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=48
#- ASYNC_MASTER 异步复制Master - SYNC_MASTER 同步双写Master - SLAVE
brokerRole=SLAVE
#- ASYNC_FLUSH 异步刷盘 SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
listenPort=10911
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=false
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#Broker 对外服务的监听端口
listenPort=10911
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#存储路径
storePathRootDir=/data/mq/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/data/mq/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/data/mq/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/data/mq/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/data/mq/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/data/mq/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#并发send线程数,多线程来发送消息可能会出现broker busy
sendMessageThreadPoolNums=128
useReentrantLockWhenPutMessage=true
#RocketMQ Name Server地址列表,多个NameServer地址用分号隔开
namesrvAddr=192.168.209.242:9876;192.168.209.243:9876
#集群名
rokerClusterName=game-rocketmq-cluster
brokerIP1=192.168.209.243
brokerName=broker-b
brokerId=0
#删除文件时间点,默认凌晨4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=48
#- ASYNC_MASTER 异步复制Master - SYNC_MASTER 同步双写Master - SLAVE
brokerRole=SYNC_MASTER
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
listenPort=10911
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=false
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#Broker 对外服务的监听端口
listenPort=10911
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#存储路径
storePathRootDir=/root/data/mq/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/root/data/mq/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/root/data/mq/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/root/data/mq/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/root/data/mq/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/root/data/mq/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#并发send线程数,多线程来发送消息可能会出现broker busy
sendMessageThreadPoolNums=128
useReentrantLockWhenPutMessage=true
#RocketMQ Name Server地址列表,多个NameServer地址用分号隔开
namesrvAddr=192.168.209.242:9876;192.168.209.243:9876
#集群名
rokerClusterName=game-rocketmq-cluster
brokerIP1=192.168.209.243
brokerName=broker-a
brokerId=1
#删除文件时间点,默认凌晨4点
deleteWhen=04
#文件保留时间,默认 48 小时
fileReservedTime=48
#- ASYNC_MASTER 异步复制Master - SYNC_MASTER 同步双写Master - SLAVE
brokerRole=SLAVE
#- ASYNC_FLUSH 异步刷盘
#- SYNC_FLUSH 同步刷盘
flushDiskType=ASYNC_FLUSH
listenPort=10911
#是否允许 Broker 自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
#是否允许 Broker 自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=false
#在发送消息时,自动创建服务器不存在的topic,默认创建的队列数
defaultTopicQueueNums=4
#Broker 对外服务的监听端口
listenPort=10911
#commitLog每个文件的大小默认1G
mapedFileSizeCommitLog=1073741824
#ConsumeQueue每个文件默认存30W条,根据业务情况调整
mapedFileSizeConsumeQueue=300000
#存储路径
storePathRootDir=/data/mq/rocketmq/store
#commitLog 存储路径
storePathCommitLog=/data/mq/rocketmq/store/commitlog
#消费队列存储路径存储路径
storePathConsumeQueue=/data/mq/rocketmq/store/consumequeue
#消息索引存储路径
storePathIndex=/data/mq/rocketmq/store/index
#checkpoint 文件存储路径
storeCheckpoint=/data/mq/rocketmq/store/checkpoint
#abort 文件存储路径
abortFile=/data/mq/rocketmq/store/abort
#限制的消息大小
maxMessageSize=65536
#并发send线程数,多线程来发送消息可能会出现broker busy
sendMessageThreadPoolNums=128
useReentrantLockWhenPutMessage=true
5、初始文件夹
mkdir -p /usr/local/rocketmq/store
mkdir -p /usr/local/rocketmq/store/commitlog
mkdir -p /usr/local/rocketmq/store/consumequeue
mkdir -p /usr/local/rocketmq/store/index
mkdir -p /usr/local/rocketmq/store/checkpoint
mkdir -p /usr/local/rocketmq/store/abort
6、启动脚本
nameserver 启动
nohup sh mqnamesrv -n IP:PORT > /root/data/mq/rokermq/nameserv.log 2>&1 &
broker 启动
nohup sh /root/data/www/rocketmq-4.9.2/bin/mqnamesrv -n IP:PORT > /root/data/mq/roketmq 2>&1 &
broker-a
nohup sh /root/data/www/rocketmq-4.9.2/bin/mqbroker -n IP:PORT -c /root/data/www/rocketmq-4.9.2/conf/2m-2s-sync/broker-a.properties > /root/data/mq/roketmq 2>&1 &
broker-a-s
nohup sh /root/data/www/rocketmq-4.9.2/bin/mqbroker -n IP:PORT -c /root/data/www/rocketmq-4.9.2/conf/2m-2s-sync/broker-a-s.properties > /root/data/mq/roketmq 2>&1 &
broker-b-s
nohup sh /root/data/www/rocketmq-4.9.2/bin/mqbroker -n IP:PORT -c /root/data/www/rocketmq-4.9.2/conf/2m-2s-sync/broker-b-s.properties > /root/data/mq/roketmq 2>&1 &
broker-b
nohup sh /root/data/www/rocketmq-4.9.2/bin/mqbroker -n IP:PORT -c /root/data/www/rocketmq-4.9.2/conf/2m-2s-sync/broker-b.properties > /root/data/mq/roketmq 2>&1 &
#集群机器查询
sh bin/mqadmin clusterList -n 192.168.209.243:9876
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhiacjak
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22