前置条件:服务器已安装java 8环境
1.下载官方的4.4.0包
2.放到服务器,解压到/app目录下
unzip rocketmq-all-4.4.0-bin-release.zip
3.进入目录
cd rocketmq-all-4.4.0-bin-release
4.修改namesrv相关配置
vim bin/runserver.sh
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m" #将内存大小改为当前服务器的合适值
5.修改broker相关配置
vim bin/runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m" #将内存大小改为当前服务器的合适值
JAVA_OPT="${JAVA_OPT} -XX:MaxDirectMemorySize=256m" #将内存大小改为当前服务器的合适值
6.修改broker的conf
#行尾添加
brokerIP1=指定IP
storePathRootDir=/app/mq/store
storePathCommitLog=/app/mq/store/commitlog
7.创建 server_start.sh脚本
vim server_start.sh
nohup sh bin/mqnamesrv -n IP:9876 >> namesrv.out &
8.创建server_stop.sh脚本
vim server_stop.sh
sh bin/mqshutdown namesrv
9.创建broker_start.sh脚本
vim broker_start.sh
nohup sh bin/mqbroker -n IP:9876 -c conf/broker.conf autoCreateTopicEnable=true >> broker.out &
注:autoCreateTopicEnable=true 不开不允许创建不存在的topic
10. 创建broker_stop.sh脚本
vim broker_stop.sh
sh bin/mqshutdown broker
11.查看执行日志
12.使用工具验证是否运行成功
export NAMESRV_ADDR=IP:9876
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer
踩坑:
主要是配置内存大小的问题,如果服务器是1G内存,那么要保证namesrv与broker的内存配置参数加起来最大不能超过1G,否则会启动失败!!!