千家信息网

CentOS7中如何安装RocketMQ 4.7.1

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,本篇内容介绍了"CentOS7中如何安装RocketMQ 4.7.1"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,
千家信息网最后更新 2025年12月01日CentOS7中如何安装RocketMQ 4.7.1

本篇内容介绍了"CentOS7中如何安装RocketMQ 4.7.1"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

安装过程

服务器上已经安装了OpenJDK 8,并设置了JAVA_HOME 。

下载和解压RocketMQ

在RocketMQ官网上找到下载RocketMQ 4.7.1的链接,下载和解压RocketMQ:

# 下载  wget http://ftp.cuhk.edu.hk/pub/packages/apache.org/rocketmq/4.7.1/rocketmq-all-4.7.1-bin-release.zip  # 解压  unzip rocketmq-all-4.7.1-bin-release.zip  # 安装到/usr/local/rocketmq  mv rocketmq-all-4.7.1-bin-release /usr/local  ln -s /usr/local/rocketmq-all-4.7.1-bin-release /usr/local/rocketmq

调低RocketMQ的JVM大小

RocketMQ的默认JVM太大,不适合在开发测试环境中使用,需要调低JVM大小。

在RocketMQ的安装目录(本例为/usr/local/rocketmq),查找sh脚本中的JVM参数设置:

find . -name '*.sh' | xargs egrep 'Xms'

需要修改以下sh脚本的JVM参数:

bin/runserver.sh  bin/runbroker.sh  bin/tools.sh

修改前记得先备份相应脚本,具体JVM大小根据实际情况设定。

- 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"

- 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"

- bin/tools.sh修改前:

JAVA_OPT="${JAVA_OPT} -server -Xms1g -Xmx1g -Xmn256m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m"

修改后:

JAVA_OPT="${JAVA_OPT} -server -Xms256m -Xmx256m -Xmn128m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m"

启动Name Server

# 后台启动  nohup sh bin/mqnamesrv >/dev/null 2>&1 &

Name Server的默认端口为9876,运行sh bin/mqnamesrv -p可查看Name Server的配置项,并可通过-c namesrv.conf方式指定配置文件启动;

RocketMQ的默认日志路径为`~/logs/rocketmqlogs/``;

可以将启动Name Server命令保存为脚本,以方便下次启动。

启动Broker

启动Broker时需要指定要连接的Name Server:

# 后台启动  nohup sh bin/mqbroker -n localhost:9876 >/dev/null 2>&1 &

可以将启动Broker命令保存为脚本,以方便下次启动。

查看RocketMQ进程

ps -ef | grep -v grep | grep rocketmq

测试RocketMQ

测试发送消息和接收消息

使用RocketMQ自带的消息生产者和消费者示例来测试发送消息和接收消息:

export NAMESRV_ADDR=localhost:9876  sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer  sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

关闭RocketMQ

关闭Broker

sh bin/mqshutdown broker

可以将关闭Broker命令保存为脚本,以方便下次关闭。

关闭Name Server

sh bin/mqshutdown namesrv

关闭Name Server前需要先关闭Broker;

可以将关闭Name Server命令保存为脚本,以方便下次关闭。

修改Name Server的端口

RocketMQ Name Server的默认端口为9876,可以通过以下方法修改Name Server的端口:

  1. 鸿蒙官方战略合作共建--HarmonyOS技术社区

  2. 新增一个Name Server配置文件namesrv.conf,保存内容为:

listenPort=10076

2. 启动Name Server时指定配置文件:

nohup sh bin/mqnamesrv -c namesrv.conf >/dev/null 2>&1 &

3. 查看RocketMQ进程:

ps -ef | grep rocketmq

4. 查看RocketMQ Name Server的端口号:

netstat -tnlp | grep 

5. 修改后Broker需要指定新的Name Server地址(端口)。

安装RocketMQ控制台

克隆rocketmq-externals 项目,并编译rocketmq-console。

命令示例:

git clone https://github.com/apache/rocketmq-externals.git  cd rocketmq-externals/rocketmq-console  mvn clean package -Dmaven.test.skip=true

将target/rocketmq-console-ng*.jar放到和RocketMQ安装目录(本例为/usr/local/rocketmq)下。

在RocketMQ安装目录下新建一个启动RocketMQ控制台的脚本来启动RocketMQ控制台:

nohup java -jar rocketmq-console-ng*.jar --server.port=8080 --rocketmq.config.namesrvAddr=localhost:9876 > /dev/null 2>&1 &

默认RocketMQ控制台不需要密码登录,请参考RocketMQ使用文档 进行配置。

Troubleshooting

问题1: 启动Name Server和Broker,或测试时报错Please set the JAVA_HOME variable in your environment, We need java(x64)!但是系统已经安装了OpenJDK8,并且已经设置了JAVA_HOME。

解决方法: 运行which java来查看java的路径,比如为/usr/bin/java。

修改bin/runserver.sh和bin/runbroker.sh和bin/tools.sh,注释掉校验JAVA_HOME语句,并明确指定JAVA路径:

#[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=$HOME/jdk/java  #[ ! -e "$JAVA_HOME/bin/java" ] && JAVA_HOME=/usr/java  #[ ! -e "$JAVA_HOME/bin/java" ] && error_exit "Please set the JAVA_HOME variable in your environment, We need java(x64)!"  #export JAVA_HOME  export JAVA="/usr/bin/java"

"CentOS7中如何安装RocketMQ 4.7.1"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

脚本 命令 消息 端口 测试 配置 控制台 控制 内容 大小 文件 目录 路径 参数 后台 实际 情况 方法 更多 知识 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 青海科技产业互联网案例 服务器机箱加装内存条 pubchem数据库查靶点 信阳市网络安全监察在哪里 安徽pdu服务器电源哪家便宜 数据库原理何玉洁答案 微信数据库怎么关闭 组态王客户端与服务器详细配置 网络安全讲座宣传片模板 连数据库的时候显示口令失效 供电公司网络安全专项检查 慕课计算机网络技术答案 山东最大服务器云空间 文明重启的服务器在哪里 数据库基础知识扫盲 数据库复制显示内存不足无法运行 关于网络安全进校园的内容 盛传网络安全绘画 江阴dell服务器维修费用 无锡市小蝌蚪网络技术公司 软件开发验收不合格怎么办 网络技术对网络犯罪的作用 蚌埠医疗软件开发哪家好 网站使用动态ip服务器 定时任务多服务器问题 启进网络安全吗 access数据库如何做成软件 网络安全最严重历史 网络安全事件处置应急指南 杭州卓诚网络技术开发有限公司
0