feat:增加秒杀系统设计文档

This commit is contained in:
2026-06-10 18:16:29 +08:00
parent b40d3f14a8
commit b839e361ac
4 changed files with 242 additions and 1 deletions

View File

@@ -0,0 +1,100 @@
---
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
```