Files
blog-press/docs/Web/SpringBoot/SpringBoot-RocketMQ.md

101 lines
2.4 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: SpringBoot RocketMQ简介和使用
date: 2026-06-10
---
# 一、简介
  [RocketMQ](https://rocketmq.apache.org/zh/)Apache RocketMQ 是一款面向万亿级消息规模的 AI 原生异步通信引擎。诞生于阿里巴巴高并发电商场景经过数千家企业的生产验证RocketMQ 已从高性能消息队列演进为统一消息平台,横跨传统业务消息、事件流处理和新兴的 AI 原生通信三大范式。
# 二、安装
## 2.1 docker安装
```yml
services:
namesrv:
image: apache/rocketmq:5.3.2
container_name: rmqnamesrv
ports:
- 9876:9876
networks:
- rocketmq
command: sh mqnamesrv
broker:
image: apache/rocketmq:5.3.2
container_name: rmqbroker
ports:
- 10909:10909
- 10911:10911
- 10912:10912
volumes:
- ./broker.conf:/home/rocketmq/rocketmq-5.3.2/conf/broker.conf
environment:
- NAMESRV_ADDR=rmqnamesrv:9876
depends_on:
- namesrv
networks:
- rocketmq
command: sh mqbroker -c /home/rocketmq/rocketmq-5.3.2/conf/broker.conf
proxy:
image: apache/rocketmq:5.3.2
container_name: rmqproxy
networks:
- rocketmq
depends_on:
- broker
- namesrv
ports:
- 8380:8080
- 8381:8081
restart: on-failure
environment:
- NAMESRV_ADDR=rmqnamesrv:9876
command: sh mqproxy
rocketmq-dashboard:
image: apacherocketmq/rocketmq-dashboard:2.1.0
container_name: rocketmq-dashboard
environment:
- JAVA_OPTS=-Drocketmq.namesrv.addr=rmqnamesrv:9876
ports:
- 8382:8082
networks:
- rocketmq
depends_on:
- namesrv
restart: always
networks:
rocketmq:
driver: bridge
```
  broker.conf:
```conf
brokerIP1=192.168.1.100
autoCreateTopicEnable=true
```
::: tip
这里一定要配置brokerIP1否则Broker的地址是docker的内网地址具体可以在控制台中查看Broker的地址。
:::
# 三、SpringBoot使用
## 3.1 引入依赖
```xml
<!-- RocketMQ -->
<dependency>
<groupId>org.apache.rocketmq</groupId>
<artifactId>rocketmq-spring-boot-starter</artifactId>
<version>2.3.6</version>
</dependency>
```
::: tip
需要加上版本号SpringBoot3使用2.3以上的版本。
:::
## 3.2 配置文件
```yml
rocketmq:
name-server: 192.168.1.100:9876
producer:
group: seckill-producer-group
```