在Linux部署RocketMQ完整过程

前言

本文讲述 RocketMQ 从源码编译到配置启动以及测试的完整过程。

准备工作

  • 安装 64bit JDK 1.8+
  • 参考 安装 Maven 3.2.x+
  • Linux 时间同步
yum install ntpdate -y
ntpdate time.windows.com

部署步骤

下载 / 编译

  • 从 GitHub 下载 后编译(也可以从 Apache RocketMQ - releases 下载,或者走后面一步直接下载编译后的包)
echo "先创建单独目录" > /dev/null
mkdir -p ~/soft/rocketmq

echo "从 GitHub 下载源码" > /dev/null
wget -P ~/soft/rocketmq https://github.com/apache/rocketmq/archive/refs/tags/rocketmq-all-4.9.1.tar.gz

echo "解压到指定目录" > /dev/null
tar -xf ~/soft/rocketmq/rocketmq-all-4.9.1.tar.gz -C ~/soft/rocketmq

echo "进入解压目录" > /dev/null
cd ~/soft/rocketmq/rocketmq-rocketmq-all-4.9.1

echo "编译" > /dev/null
mvn -Prelease-all -DskipTests clean install -U -f ~/soft/rocketmq/rocketmq-rocketmq-all-4.9.1

echo "拷贝编译后的目录到/opt/soft"
cp -r ~/soft/rocketmq/rocketmq-rocketmq-all-4.9.1/distribution/target/rocketmq-4.9.1/rocketmq-4.9.1/ /opt/soft/
  • 跳过源码编译,从 Apache 下载编译后的包
echo "从 Apache 下载编译后的包" > /dev/null
wget -P ~/soft/rocketmq https://dlcdn.apache.org/rocketmq/4.9.1/rocketmq-all-4.9.1-bin-release.zip

echo "解压" > /dev/null
unzip ~/test/rocketmq/rocketmq-all-4.9.1-bin-release.zip -d /opt/soft/

echo "修改目录名" > /dev/null
mv /opt/soft/rocketmq-all-4.9.1-bin-release/ /opt/soft/rocketmq-4.9.1

修改启动参数

启动脚本中设置的 JVM 内存参数很大,如果服务器内存不够的话可以按这一步调小一点。这里只是测试所以设置很小,生产环境可以默认或者更大一点。修改 Name Server 堆内存大小(比如 -Xms512m -Xmx512m -Xmn256m)。

vim /opt/soft/rocketmq-4.9.1/bin/runserver.sh 

image-20210927133726004

image-20210927133803278

修改 Broker 堆内存大小(比如 -Xms512m -Xmx512m)

vim /opt/soft/rocketmq-4.9.1/bin/runbroker.sh

在这里插入图片描述

修改 tools.sh 指定 Name Server 地址 export NAMESRV_ADDR=localhost:9876,设置堆内存大小 (比如 -Xms512m -Xmx512m)

vim /opt/soft/rocketmq-4.9.1/bin/tools.sh

在这里插入图片描述

启动 / 停止

启动

# 后台方式启动 Name Server
nohup sh /opt/soft/rocketmq-4.9.1/bin/mqnamesrv &

# 后台启动 Broker
nohup sh /opt/soft/rocketmq-4.9.1/bin/mqnamesrv -n localhost:9876 &

停止

# 停止 Broker
sh /opt/soft/rocketmq-4.9.1/bin/mqshutdown broker

# 停止 Name Server
sh /opt/soft/rocketmq-4.9.1/bin/mqshutdown namesrv

日志查看

# 查看 Name Server 日志
tail -f ~/logs/rocketmqlogs/namesrv.log

#查看 Broker 日志
tail -f ~/logs/rocketmqlogs/broker.log 

测试

测试发消息,最后 ctrl + c 结束。

sh /opt/soft/rocketmq-4.9.1/bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

在这里插入图片描述

测试消费消息,最后 ctrl + c 结束。

sh /opt/soft/rocketmq-4.9.1/bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

在这里插入图片描述

参考

Apache RocketMQ

Apache RocketMQ - quick-start

GitHub - RocketMQ

GitHub - RocketMQ 中文文档

GitHub - rocketmq 扩展项目

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我有八千部下

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值