【后端】【Java配置】MacOS本地安装并运行RocketMQ

下面是一篇基于 Apache RocketMQ 官方文档 QuickStart(本地部署指南)整理的中文博客,包括安装、启动及消息收发示例,适合初学者快速上手 RocketMQ:


🚀 Apache RocketMQ 快速开始指南(本地部署 + 消息收发实战)

Apache RocketMQ 是一款高性能、分布式的消息中间件系统,广泛应用于实时消息传递、异步处理、事件驱动架构等场景。通过快速开始指南,你可以在本地完成 RocketMQ 的部署与消息生产/消费体验。(rocketmq.apache.org)


🧰 一、准备工作

在开始之前,确认你的本地环境满足以下条件:

✔ 64 位操作系统(推荐 Linux/Unix/macOS) ✔ 安装了 64 位 JDK(版本要求 ≥ 1.8)(rocketmq.apache.org)


📥 二、下载 & 安装 RocketMQ

RocketMQ 提供两种安装包:

🔹 二进制包 :已编译完成,可直接运行 🔹 源码包 :需要自己编译生成可执行文件(rocketmq.apache.org)

安装流程示例(以源码包为例,Linux 环境):

复制代码
 # 解压源码包
 unzip rocketmq-all-5.3.2-source-release.zip
 cd rocketmq-all-5.3.2-source-release/
 ​
 # 编译构建二进制文件
 mvn -Prelease-all -DskipTests -Dspotbugs.skip=true clean install -U
 ​
 # 进入构建好的目录
 cd distribution/target/rocketmq-5.3.2/rocketmq-5.3.2

https://rocketmq.apache.org/docs/quickStart/01quickstart官网点击这里下载

然后下载并解压

然后运行下述命令

  1. 进入到解压后的目录下
复制代码
 cd rocketmq-all-5.3.2-source-release/
  1. 构建
复制代码
 mvn -Prelease-all -DskipTests -Dspotbugs.skip=true clean install -U
  1. 进入构建后的目录
复制代码
 cd distribution/target/rocketmq-5.3.2/rocketmq-5.3.2

📌 编译完成后,会在 distribution/target/... 目录下生成可直接运行的 RocketMQ 文件。(rocketmq.apache.org)


🚀 三、启动 RocketMQ 服务

RocketMQ 有两个关键组件需要启动:

组件 功能
NameServer 路由服务
Broker 消息存储与转发服务

1. 启动 NameServer

复制代码
 nohup sh bin/mqnamesrv &

启动成功后,可以通过查看日志确认:

复制代码
 tail -f nohup.out
 # 信息中出现 “The Name Server boot success..” 表示启动成功

2. 启动 Broker

复制代码
 nohup sh bin/mqbroker -n localhost:9876 &

📌 -n 参数指定 NameServer 地址(本地环境就是 localhost:9876)。 启动成功后日志会显示类似:

复制代码
 The broker[brokerName,ip:port] boot success..

表示 Broker 启动成功。(rocketmq.apache.org)

  1. 启动NameServer
复制代码
 nohup sh bin/mqnamesrv &
  1. 查看启动日志
复制代码
 tail -f ~/logs/rocketmqlogs/namesrv.log

可以看到类似这样启动成功的提示语句

复制代码
 The Name Server boot success...

✉ 四、发送与接收消息(使用官方工具)

RocketMQ 提供了内置的发送和消费演示工具,可以直接通过命令行来体验消息流:

1. 设置 NameServer 地址环境变量:

复制代码
 export NAMESRV_ADDR=localhost:9876

2. 发送消息

复制代码
 sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

如果发送成功,会打印类似:

复制代码
 SendResult [sendStatus=SEND_OK, msgId=...]

3. 接收消息

复制代码
 sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

消费端会输出接收到的消息内容。(rocketmq.apache.org)


🔍 五、小结 & 补充说明

🎯 到这里,你已经完成了:

✅ RocketMQ 二进制运行包的构建 ✅ NameServer 和 Broker 的启动 ✅ 简单消息的发送与消费

➡ RocketMQ 不仅支持命令行工具测试,还可以通过 Java/Go/Python 等 SDK 集成到应用中实现真正的业务逻辑处理。(rocketmq.apache.org)

如需要进一步学习 API 使用、集群部署、管理控制台 Dashboard、消息顺序/事务等高级特性,可以查阅官方文档深入学习。


📌 参考资料

官方文档:RocketMQ 本地部署快速开始指南(Run RocketMQ locally)(rocketmq.apache.org)

相关推荐
三水不滴3 小时前
Apache RocketMQ的原理与实践
经验分享·apache·rocketmq
pingzhuyan2 天前
linux运维-KylinV10的aarch64架构-docker微服务运维部署(全篇)
linux·docker·jdk·rocketmq·kylin·aarch64
短剑重铸之日3 天前
《SpringCloud实用版》Stream + RocketMQ 实现可靠消息 & 事务消息
后端·rocketmq·springcloud·消息中间件·事务消息
a程序小傲4 天前
得物Java面试被问:RocketMQ的消息轨迹追踪实现
java·linux·spring·面试·职场和发展·rocketmq·java-rocketmq
Jinkxs5 天前
基于 Java 的消息队列选型年度总结:RabbitMQ、RocketMQ、Kafka 实战对比
java·kafka·java-rocketmq·java-rabbitmq
jiayong235 天前
MQ基础概念面试题
java·kafka·rabbitmq·rocketmq
短剑重铸之日8 天前
《RocketMQ研读》面试篇
java·后端·面试·职场和发展·rocketmq
时艰.8 天前
RocketMQ 面试核心知识点总结
面试·rocketmq
what丶k8 天前
为何Kafka成为消息队列首选?深度对比RabbitMQ与RocketMQ
kafka·java-rocketmq·java-rabbitmq
观测云8 天前
阿里云 RocketMQ 4.0 可观测最佳实践
阿里云·云计算·rocketmq