文章目录
1、安装JDK1.8
2、下载RocketMQ
打开 RocketMQ 官方文档, 我们选择已编译的版本下载,省去 Maven 编译的过程
cd /opt
wget https://mirrors.tuna.tsinghua.edu.cn/apache/rocketmq/4.9.0/rocketmq-all-4.9.0-bin-release.zip --no-check-certificate
3、解压RocketMQ
unzip -o rocketmq-all-4.9.0-bin-release.zip
4、启动RocketMQ
安装好后的RocketMQ默认的虚拟机内存较大。为了防止启动失败,报内存不足,我们提前修改下JVM内存参数值。
- /opt/rocketmq-all-4.9.0-bin-release/bin/runbroker.sh
##原有值
##JAVA_OPT="${JAVA_OPT} -server -Xms8g -Xmx8g -Xmn4g"
##现有值
JAVA_OPT="${JAVA_OPT} -server -Xms512m -Xmx512m -Xmn256m"
- /opt/rocketmq-all-4.9.0-bin-release/bin/runserver.sh
##原有值
##JAVA_OPT="${JAVA_OPT} -server -Xms4g -Xmx4g -Xmn2g -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
##现有值
JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=320m"
4.1、启动&关闭nameserver
- 启动命令
cd /opt/rocketmq-all-4.9.0-bin-release/bin
##后台启动NameServer
nohup sh ./mqnamesrv >>/opt/rocketmq-all-4.9.0-bin-release/logs/namesrv.log 2>&1 &
##查看NameServer启动日志
tail -f /opt/rocketmq-all-4.9.0-bin-release/logs/namesrv.log
- 关闭命令
cd /opt/rocketmq-all-4.9.0-bin-release/bin
sh ./mqshutdown namesrv
4.2、启动&关闭broker
- 启动命令
cd /opt/rocketmq-all-4.9.0-bin-release/bin
##后台启动Broker,autoCreateTopicEnable的含义为自动创建Topic
sh ./mqbroker -n 127.0.0.1:9876 autoCreateTopicEnable=true >>/opt/rocketmq-all-4.9.0-bin-release/logs/broker.log 2>&1 &
##查看Broker启动日志
tail -f /opt/rocketmq-all-4.9.0-bin-release/logs/broker.log
- 关闭命令
cd /opt/rocketmq-all-4.9.0-bin-release/bin
sh ./mqshutdown broker
5、验证RocketMQ
NameServer 和 Broker 均启动成功后,让我们来测试一下,是否能够正常的发送与接收消息。
我们通过 RocketMQ 自身 bin/tools.sh 脚本来做一个快速的测试,但是在那之前,需要设置一下 NAMESRV_ADDR 的环境变量
分别打开2个shell终端窗口,一个作为Producer生产者,一个作为Consumer消费者
- Consumer消费者
cd /opt/rocketmq-all-4.9.0-bin-release/bin
export NAMESRV_ADDR=127.0.0.1:9876
sh ./tools.sh org.apache.rocketmq.example.quickstart.Consumer
- Producer生产者
cd /opt/rocketmq-all-4.9.0-bin-release/bin
export NAMESRV_ADDR=127.0.0.1:9876
sh ./tools.sh org.apache.rocketmq.example.quickstart.Producer