下载地址及文件存放位置参考官方,选择二进制包:https://rocketmq.apache.org/zh/docs/quickStart/01quickstart
默认配置端口:9876、10909、10911、10912
- 9876为namesrv端口,可在conf目录下新建namesrv.conf配置文件(
- listenPort=8876
- 启动时加载:nohup sh bin/mqnamesrv -c conf/namesrv.conf &
- 10909等参考:https://blog.csdn.net/Taiyii/article/details/125526511;在conf/broker.conf文件内配置:
- #listenPort参数是broker的监听端口号,是remotingServer服务组件使用,作为对Producer和Consumer提供服务的端口号,默认为10911,可以通过配置文件修改。
- listenPort=10911
- #fastListenPort参数是fastRemotingServer服务组件使用,默认为listenPort – 2,可以通过配置文件修改。
- fastListenPort=10909
- #haListenPort参数是HAService服务组件使用,用于Broker的主从同步,默认为listenPort – 1,可以通过配置文件修改。
- haListenPort=10912
- # 新增的配置,broker默认端口
- namesrvAddr=10.238.57.206:8876
- # 设置broker节点所在服务器的ip地址
- brokerIP1 = 192.168.10.99
- # 磁盘使用达到95%之后,生产者再写入消息会报错 CODE: 14 DESC: service not available now, maybe disk full
- diskMaxUsedSpaceRatio=95
- #开启自动创建主题
- autoCreateTopicEnable=true
- #开启过滤消息
- enablePropertyFilter=true
- 其它说明
- remotingServer可以处理客户端所有请求,如:生产者发送消息的请求,消费者拉取消息的请求。
- fastRemotingServer功能基本与remotingServer相同,唯一不同的是不可以处理消费者拉取消息的请求。
- Broker在向NameServer注册时,只会上报remotingServer监听的listenPort端口。
- 默认情况下,生产者发送消息是请求fastRemotingServer,我们也可以通过配置让其请求remotingServer;消费者拉取消息只能请求remotingServer。
- 启动broker参数配置(重要,小内存机器可能启动不了)
- 主要是jvm默认值的设置在 runserver.sh 与 runbroker.sh 中
- runserver.sh 内查找并修改为 -Xms1g -Xmx1g -Xmn1g
- runbroker.sh 内查找差个性为 -server -Xms1g -Xmx1g -Xmn1g , -XX:MaxDirectMemorySize=500m
启动:nohup sh bin/mqbroker -c conf/broker.conf –enable-proxy &
关闭:sh bin/mqshutdown broker、sh bin/mqshutdown namesrv
可视化页面:rocketmq-dashboard (https://blog.csdn.net/m0_46357847/article/details/130476251)
启动报错:在.sh加入 $JAVA ${JAVA_OPT} –add-exports=java.base/sun.nio.ch=ALL-UNNAMED $@ 导入需要的包