RocketMQ 4.4.0安装教程

一、系统要求

64位操作系统,生产环境建议Linux/Unix/MacOS(Windows操作系统安装说明详见 Windows操作系统安装教程)
64位JDK 1.8(目前RocketMQ不支持 JDK 11)
Maven
Git
4G+的可用磁盘

安装步骤:

版本:rocketmq-all-4.4.0-bin-release.zip

  1. 解压文件并存放在 /usr/local/mq目录下:
unzip rocketmq-all-4.4.0-bin-release.zip -d /usr/local/mq
  1. 更改解压后的文件名:
mv rocketmq-all-4.4.0-bin-release/ rocketmq
  1. 切换目录到RocketMQ根目录
cd /usr/local/mq/rocketmq
  1. 启动nameServer
nohup sh bin/mqnamesrv &
  1. 查看是否启动成功
netstat -apn | grep 9876

在这里插入图片描述
或者输入下面的命令:(打印日志)

tail -f ~/logs/rocketmqlogs/namesrv.log

#如果成功启动,能看到类似如下的日志:
2019-07-18 17:03:56 INFO main - The Name Server boot success. …

  1. 启动 Broker
nohup sh bin/mqbroker -n localhost:9876 &

验证是否启动成功

tail -f ~/logs/rocketmqlogs/broker.log

#如果启动成功,能看到类似如下的日志:
2019-07-18 17:08:41 INFO main - The broker[itmuchcomdeMacBook-Pro.local, 192.168.43.197:10911] boot success. serializeType=JSON and name server is localhost:9876

3.2 验证RocketMQ功能正常(可选)
3.2.1 验证生产消息正常
执行如下命令:

export NAMESRV_ADDR=localhost:9876
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

能看到类似如下输出:

SendResult [sendStatus=SEND_OK, msgId=C0A82BC5F36C511D50C05B41…
3.2.2 验证消费消息正常
执行如下命令:

sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

能看到类似如下输出:

ConsumeMessageThread_4 Receive New Messages: [MessageExt [queueId=3, stor…

3.3 停止

依次执行以下两条命令即可

#命令

sh bin/mqshutdown broker

输出如下信息说明停止成功
The mqbroker(36695) is running…
Send shutdown request to mqbroker(36695) OK

#命令

sh bin/mqshutdown namesrv

#输出如下信息说明停止成功
The mqnamesrv(36664) is running…
Send shutdown request to mqnamesrv(36664) OK

如果 tail -f ~/logs/rocketmqlogs/broker.log 提示找不到文件,则打开 当前目录(apache-rocketmq)下的 nohup.out 日志文件查看,发现启动 Broker 失败:无法分配内存
Java HotSpot™ 64-Bit Server VM warning: INFO: os::commit_memory(0x00000005c0000000, 8589934592, 0) failed; error=‘Cannot allocate memory’ (errno=12)

#There is insufficient memory for the Java Runtime Environment to continue.
#Native memory allocation (mmap) failed to map 8589934592 bytes for committing reserved memory.
#An error report file with more information is saved as:
#/usr/local/rocketmq-all-4.3.0/distribution/target/apache-rocketmq/hs_err_pid7209.log
内存分配失败解决办法
这是因为 apache-rocketmq/bin 目录下启动 nameserv 与 broker 的 runbroker.sh 和 runserver.sh 文件中默认分配的内存太大,而系统实际内存却太小导致启动失败
通常像虚拟机上安装的 CentOS 服务器内存可能是没有高的,只能调小。实际中应该根据服务器内存情况,配置一个合适的值
找到下面的 runbroker.sh 和 runserver.sh 文件
[root@localhost bin]# pwd

cd /usr/local/mq/rocketmq/bin/

[root@localhost bin]#
runserver.sh 文件中 修改 JVM 配置下的第一行,将原来 4g 调小一点
#===========================================================================================
#JVM Configuration
#===========================================================================================
#JAVA_OPT=" J A V A O P T − s e r v e r − X m s 4 g − X m x 4 g − X m n 2 g − X X : M e t a s p a c e S i z e = 128 m − X X : M a x M e t a s p a c e S i z e = 320 m " J A V A O P T = " {JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m" JAVA_OPT=" JAVAOPTserverXms4gXmx4gXmn2gXX:MetaspaceSize=128mXX:MaxMetaspaceSize=320m"JAVAOPT="{JAVA_OPT} -server -Xms256m -Xmx256m -Xmn125m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
JAVA_OPT=" J A V A O

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值