【后端】【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)

相关推荐
星辰_mya2 天前
rocketMQ之ConsumeQueue
rocketmq
用户0203388613142 天前
RocketMQ知识点梳理
rocketmq
sww_10262 天前
Kafka和RocketMQ存储模型对比
分布式·kafka·rocketmq
tqs_123454 天前
事务消息实现
数据库·java-rocketmq
拆房老料4 天前
文档预览开源选型对比:BaseMetas FileView 与 KK FileView,谁更适合你的系统?
java·开源·java-rocketmq·开源软件
星辰_mya4 天前
rocketMQ的消息存储CommitLog
rocketmq
虎啊兄弟4 天前
RocketMQ面试题
数据库·rocketmq
予枫的编程笔记4 天前
深度解析Apache RocketMQ:从核心原理到实战应用
java·apache·rocketmq
Psycho_MrZhang4 天前
RocketMQ 设计思想总结
rocketmq
山沐与山5 天前
【MQ】MQ消息队列幂等性设计与踩坑实战
java·开发语言·数据库·rocketmq