云服务器安装RocketMQ教程

下载前准备

本文云服务器系统为centOS 7.9
RocketMQ 依赖于jdk1.8以上,因此,需要先安装jdk。如果已经安装jdk,可以跳过此步。

jdk快速安装方法:

查看可安装的jdk版本,可用如下代码
yum list |grep jdk

使用以下代码下载并安装jdk1.8,无需配置,下载完成后可直接使用。
yum install -y java-1.8.0-openjdk-devel.x86_64

RocketMQ的下载

环境要求:安装jdk1.8以上。

官网:https://rocketmq.apache.org/

下载地址:https://rocketmq.apache.org/download/

有两个下载链接,一种是source,一种是二进制文件。选二进制文件就可以了。都是zip文件,下载后发送到linux上,使用unzip命令解压。

具体安装步骤也可参考官网中文教程:https://rocketmq.apache.org/zh/docs/quickStart/01quickstart
注意:官网用的源码包,也就是Source。解压完需要编译打包,本文使用二进制文件,解压后可直接启动。

解压后就可以启动了

启动RocketMQ

启动前需要去更改配置文件,因为RocketMQ默认分配的内存过大,会导致启动失败。

首先前往bin目录

nameserver的启动文件
vim runserver.sh

一般按这个改就可以了 -xms256m -xmx256m -xmn128m

我这里改的小一点,只给了200M内存。

borker的启动文件
vim runbroker.sh

1.启动NameService

在bin目录下有mqnamesrv脚本,用该脚本启动。
nohup sh mqnamesrv &

nohup启动,sh管理员权限,&后台运行。

nohup.out可以查看日志。

2.启动Broker

在bin目录下有mqborker脚本,用该脚本启动。
注意ip地址不要使用localhost,应该用你服务器的外网ip,否则发消息时会报错
nohup sh mqbroker -n 外网ip:9876 &

关闭RocketMQ

sh mqshutdown namesrv
sh mqshutdown broker

发送消息

开两个窗口

1.添加临时环境变量

export NAMESRV_ADDR=loaclhost:9876

2.在bin目录下发送消息

sh tools.sh org.apache.rocketmq.example.quickstart.Producer

3.在bin目录下接收消息

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

遇到的问题

阿里云已经开放9876端口,却无法从外部网络发送消息

因为没有开放10911端口,这是borker的端口号。

开放了10911端口,还是无法发送消息

borker默认配的是阿里云服务器内网地址,需要修改配置文件

前往conf目录下
vim broker.conf

最下面添加配置
brokerIP1=外网地址

发送消息时,提示无法连接到内网ip的10911接口,但测试端口号可以访问

启动broker的时候不能使用
nohup sh mqbroker -n localhost:9876 &

应该指定外网ip来启动broker
nohup sh mqbroker -n 外网ip:9876 &

RocketMQ的网页控制台无法查看消息

需要开放broker的10909端口

10909是vip通道10911是非vip通道。

Tag消息消费失败

一个Group下的所有消费者的消费逻辑必须一致,就是说,一个Group下消费的Tag属性必须一样,否则会导致消费失败。

相关推荐
一可米2 小时前
gitHub.com Actions自动化发布
运维·自动化·github
智塑未来2 小时前
证券公司智能运维平台哪个品牌做得好?擎创科技智能运维 2.0 适配券商全场景
运维·科技·区块链
2601_965798472 小时前
Is Hygia Good for Maid & Janitorial Sites? Technical Audit
服务器·网络·数据库
蚰蜒螟3 小时前
从内核源码看Linux启动:chroot、execve与MS_MOVE的协奏曲
linux·服务器·网络
酷可达拉斯3 小时前
自动化运维-ansible配置文件与主机清单
linux·运维·自动化·ansible
来者皆善4 小时前
ZYNQ linux上使用 USB CDC ACM
linux·运维·服务器
4/5$全真龙门4 小时前
廉价易行的内网穿透
运维
缓慢更新5 小时前
企业档案管理系统迁移实录:从文件服务器到智能检索引擎
运维·服务器
小北的AI科技分享5 小时前
企业AI开发:从技术选型到落地的关键路径
运维·模型·评估
Dawn-bit5 小时前
Linux磁盘分区与Swap和磁盘故障查询
linux·运维·服务器·网络·云计算