RocketMQ安装与启动
一、下载
rocketmq-all-4.9.3-bin-release.zip
二、环境要求
三、安装RocketMQ
unzip rocketmq-all-4.9.3-bin-release.zip
sudo mv rocketmq-4.9.3/ rocketmq/
目录介绍
- bin:启动脚本,包括shell脚本和CMD脚本
- conf:实例配置文件 ,包括broker配置文件、logback配置文件等
- lib:依赖jar包,包括Netty、commons-lang、FastJSON等
四、启动RocketMQ
1. 启动NameServer
现在在rocketmq目录下:
nohup sh bin/mqnamesrv &
tail -f ~/logs/rocketmqlogs/namesrv.log
2022-04-25 16:08:07 INFO main - tls.client.authServer = false
2022-04-25 16:08:07 INFO main - tls.client.trustCertPath = null
2022-04-25 16:08:07 INFO main - Using JDK SSL provider
2022-04-25 16:08:08 INFO main - SSLContext created for server
2022-04-25 16:08:08 INFO main - Try to start service thread:FileWatchService started:false lastThread:null
2022-04-25 16:08:08 INFO NettyEventExecutor - NettyEventExecutor service started
2022-04-25 16:08:08 INFO main - The Name Server boot success. serializeType=JSON
2022-04-25 16:08:08 INFO FileWatchService - FileWatchService service started
2022-04-25 16:09:08 INFO NSScheduledThread1 - --------------------------------------------------------
2022-04-25 16:09:08 INFO NSScheduledThread1 - configTable SIZE: 0
这里能看到The Name Server boot success.说明启动NameServer成功。
2. 启动Broker
nohup sh bin/mqbroker -n localhost:9876 &
tail -f ~/logs/rocketmqlogs/broker.log
tail: cannot open ‘/root/logs/rocketmqlogs/broker.log’ for reading: No such file or directory
tail: no files remaining
没有生成日志文件,可能是没有启动成功,使用jps查看一下:
[root@localhost rocketmq]
3797 Jps
3702 NamesrvStartup
的确没有启动成功。
这是因为:RocketMQ默认的虚拟机内存较大,启动Broker如果因为内存不足失败,需要编辑bin目录下的配置文件runbroker.sh 里面的JVM Configuration下的内存大小,然后再启动一下broker。
vi runbroker.sh
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m"
如果还不行可以尝试继续修改runserver.sh文件,我的虚拟机内存是2GB,只用修改runbroker.sh 就可以。
现在再用jps检查一下:
[root@localhost bin]
[root@localhost bin]
3702 NamesrvStartup
4183 Jps
4011 BrokerStartup
OK!都启动成功了!
五、测试RocketMQ
1. 发送消息
# 1.设置环境变量
export NAMESRV_ADDR=localhost:9876
# 2.使用安装包的Demo发送消息
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer
2.接收消息
export NAMESRV_ADDR=localhost:9876
sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer
3. 关闭RocketMQ
sh bin/mqshutdown namesrv
sh bin/mqshutdown broker
|