Apache RocketMQ是由阿里巴巴开源并捐献给Apache基金会的分布式消息与流处理平台,具备高吞吐量、低延迟、高可用性和可靠性,支持发布订阅、事务消息、定时消息等核心功能,可高效处理***、电商、物流等领域的海量数据,保障消息可靠传递与系统稳定运行,是企业级分布式架构中实现异步通信、流量削峰和数据解耦的关键组件。
收藏数: 141
下载次数: 2135020
类型:
apache/rocketmqApache RocketMQ 是一款开源的分布式消息中间件,2016年成为 Apache 顶级项目。它专为企业级分布式系统设计,主要解决分布式架构中的异步通信、流量削峰、系统解耦等问题,支持高并发、高可靠的消息传递,适合各类企业级业务场景。
bashgit clone [***] cd rocketmq mvn -Prelease-all -DskipTests clean install -U cd distribution/target/rocketmq-<version>/rocketmq-<version>
bash# 后台启动 NameServer,日志输出到 nohup.out nohup sh bin/mqnamesrv & # 查看启动日志,出现 "The Name Server boot success" 表示启动成功 tail -f ~/logs/rocketmqlogs/namesrv.log
bash# 启动 Broker,指定 NameServer 地址(本地默认 9876 端口) nohup sh bin/mqbroker -n localhost:9876 & # 查看启动日志,出现 "The broker[xxx, IP:PORT] boot success" 表示启动成功 tail -f ~/logs/rocketmqlogs/broker.log
java// 创建生产者,指定组名 DefaultMQProducer producer = new DefaultMQProducer("producer_group"); // 设置 NameServer 地址 producer.setNamesrvAddr("localhost:9876"); // 启动生产者 producer.start(); // 创建消息(topic 为 "test_topic",tag 为 "tagA",内容为 "Hello RocketMQ") Message msg = new Message("test_topic", "tagA", "Hello RocketMQ".getBytes()); // 发送消息 SendResult sendResult = producer.send(msg); System.out.println("发送结果:" + sendResult); // 关闭生产者 producer.shutdown();
java// 创建消费者,指定组名 DefaultMQPushConsumer consumer = new DefaultMQPushConsumer("consumer_group"); // 设置 NameServer 地址 consumer.setNamesrvAddr("localhost:9876"); // 订阅 topic "test_topic",tag 为 "tagA"(* 表示所有 tag) consumer.subscribe("test_topic", "tagA"); // 注册消息监听回调 consumer.registerMessageListener((List<MessageExt> msgs, ConsumeConcurrentlyContext context) -> { for (MessageExt msg : msgs) { System.out.println("收到消息:" + new String(msg.getBody())); } // 返回 CONSUME_SUCCESS 表示消费成功 return ConsumeConcurrentlyStatus.CONSUME_SUCCESS; }); // 启动消费者 consumer.start(); System.out.println("消费者启动成功,等待接收消息..."); // 保持运行(实际应用中需避免主线程退出) Thread.sleep(60000);
bash# 关闭 Broker sh bin/mqshutdown broker # 关闭 NameServer sh bin/mqshutdown namesrv
通过以上步骤,即可快速搭建 RocketMQ 环境并体验消息发送/消费流程。更多高级功能(如事务消息、顺序消息)可参考 官方文档。
以下是 apache/rocketmq 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 版本下载页面。




manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务