基于Linux环境安装 RocketMQ 保姆级教程

导读:本篇文章讲解 基于Linux环境安装 RocketMQ 保姆级教程,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

0. 准备工作

首先,需要在服务器上安装 Java 环境,配置 jdk 1.8+, 因为 RocketMQ 是由 java 语言开发,必须要有 Java 环境。在 linux 环境下安装 jdk 可以参考教程 基于Linux环境安装 jdk 1.8(详细安装教程)

1. 下载 RocketMQ

首先,需要在 Apache RocketMQ 官网下载 RocketMQ, 当前最新版本为 4.9.0, 如果需要下载其他版本,直接更改链接https://rocketmq.apache.org/release_notes/release-notes-4.x.0/即可,其中 x 就是需要更改的版本,这里我使用的是准备好的 4.4.0 版本,点击链接可以直接下载。
需要注意的是,我们需要下载的是 Linux 平台下的二进制压缩包
在这里插入图片描述

2. 上传压缩包至云服务器

下载完二进制压缩包之后,需要将压缩包通过 FTP 文件传输工具上传到云服务器上面。
首先,在云服务器建立一个新的文件夹,用来存放上传的压缩包,输入命令

mkdir /usr/local/software

创建好文件夹 software 之后,将压缩包上传到该文件夹即可。
在这里插入图片描述

3. 安装 RocketMQ

第一步:解压。首先,通过命令 cd /usr/local/software,切换到存放RocketMQ压缩包的目录。然后,将其解压,输入命令

unzip rocketmq-all-4.4.0-bin-release.zip

在这里插入图片描述
解压完成之后,可以使用命令ll查看当前目录包含的文件,其中就包括 rocketmq-all-4.4.0-bin-release
在这里插入图片描述
第二步:移动解压后的 rocketmq-all-4.4.0-bin-release 至目录 /usr/local/rocketmq 下。首先,创建在 /usr/local 下创建新的文件夹 rocketmq

mkdir /usr/local/rocketmq

然后使用如下命令,将 rocketmq-all-4.4.0-bin-release 移动到 /usr/local/rockemq目录下。

mv rocketmq-all-4.4.0-bin-release /usr/local/rocketmq/

移动好之后,切换到 /usr/local/rocketmq目录,并查看该目录下是否存在 rocketmq-all-4.4.0-bin-release 文件。
在这里插入图片描述
最后,使用命令cd rocketmq-all-4.4.0-bin-release/bin, 切换到 bin 目录下
在这里插入图片描述
到这里,安装工作完成。

4. 启动 RocketMQ

安装完成之后,就可以着手启动 RocketMQ 了。
第一步:启动 Name Server.

# 1.启动NameServer
nohup sh bin/mqnamesrv &

在这里插入图片描述

# 2.查看启动日志
tail -f ~/logs/rocketmqlogs/namesrv.log

在这里插入图片描述
第二步:启动 Broker.

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

在这里插入图片描述

# 2.查看启动日志
tail -f ~/logs/rocketmqlogs/broker.log 

在这里插入图片描述
但是,从上图中可以看到,并不能查看到任何的日志,显示没有该文件或目录。这主要是因为 RocketMQ默认的虚拟机内存较大,启动Broker如果因为内存不足失败,需要编辑如下两个配置文件,修改JVM内存大小。

  1. 需要修改 runbroker.sh 文件的配置。
vi runbroker.sh

在这里插入图片描述
我们可以看到,默认的 JVM 内存分配的很大,已经远远超出了云服务器内存大小(我的云服务器内存为2G),所以我们需要修改它的默认值,修改为

-server -Xms256m -Xmx256m -Xmn128m

在这里插入图片描述
2. 修改 runserver.sh 文件的配置。

vi runserver.sh

将它的默认内存分配更改为

-server -Xms256m -Xmx256m -Xmn128m 

在这里插入图片描述
3. 配置完成之后,重新启动 broker,并查看日志。注意此时的目录为 rocketmq-all-4.4.0-bin-release,自己手动切换一下。

nohup sh bin/mqbroker -n localhost:9876 &
tail -f ~/logs/rocketmqlogs/broker.log

在这里插入图片描述
可以看到,输出日志内容。
第三步: 使用 jps 命令,查看启动的进程
在这里插入图片描述
可以观察到,Broker 和 Name Server 均启动成功,这样 RocketMQ 也启动成功了。

5. 测试 RocketMQ

启动完成之后,可以测试一下 RocketMQ, 模拟发送和接收消息过程。

5.1 发送消息

首先,需要新建一个连接到云服务器上的界面,模拟消息发送方。例如,我新建了一个 aliyun2 连接到服务器上,作为消息的发送方。
在这里插入图片描述
依次输入以下命令

cd /usr/local/rocketmq/rocketmq-all-4.4.0-bin-release/bin
export NAMESRV_ADDR=localhost:9876
sh tools.sh org.apache.rocketmq.example.quickstart.Producer

在这里插入图片描述
可以看到消息发送成功。

5.2 接收消息

同样地,需要新建一个连接到云服务器上的界面,模拟消息接收方。
在这里插入图片描述
可以看到,接收消息成功。需要注意的是,消息接收方是一等待着消息发送方发送消息的,所以它需要一直监控。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/5215.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!