From 3b4dbadbf2a318bff42e6dbfac243d9f393d81c2 Mon Sep 17 00:00:00 2001 From: gitee-bot Date: Fri, 27 Jun 2025 01:16:58 +0000 Subject: [PATCH] Update README.md --- README.md | 105 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 68 insertions(+), 37 deletions(-) diff --git a/README.md b/README.md index 0a175b6..747e7e6 100644 --- a/README.md +++ b/README.md @@ -1,37 +1,68 @@ -# rabbit-mq - -#### 介绍 -rabbitMQ学习笔记 - -#### 软件架构 -软件架构说明 - - -#### 安装教程 - -1. xxxx -2. xxxx -3. xxxx - -#### 使用说明 - -1. xxxx -2. xxxx -3. xxxx - -#### 参与贡献 - -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request - - -#### 特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) + + +# RabbitMQ 示例项目 + +## 介绍 + +这是一个使用 RabbitMQ 的示例项目,演示了如何在 Spring Boot 应用中实现不同的消息队列模式,包括点对点模式、路由模式、订阅模式、主题模式和工作队列模式。 + +## 软件架构 + +- **Spring Boot**: 提供快速开发框架 +- **RabbitMQ**: 实现消息队列功能 +- **application.yml**: 配置文件 +- **index.html**: 静态页面 +- **模块划分**: + - `RabbitMqApplication`: 启动类 + - `RabbitMqConfig`: 队列与交换机配置 + - `pointtopoint`: 点对点模式 + - `workqueue`: 工作队列模式 + - `subscribe`: 订阅模式 + - `topic`: 主题模式 + - `route`: 路由模式 + +## 安装教程 + +1. 安装并启动 [RabbitMQ](https://www.rabbitmq.com/download.html) +2. 安装 [JDK 1.8+](https://adoptium.net/zh-CN/temurin/releases/?version=8) +3. 安装 [Maven](https://maven.apache.org/download.cgi) +4. 克隆项目:`git clone [项目地址]` +5. 构建项目:`mvn clean package` +6. 启动应用:`mvn spring-boot:run` 或使用 IDE 运行 `RabbitMqApplication.java` + +## 使用说明 + +- **点对点模式(Point-to-Point)**: + - 生产者:`PointProduce.send()` + - 消费者:`PointConsume.listenHelloMsg()` + +- **工作队列模式(Work Queue)**: + - 生产者:`WorkMqProduce.send()` + - 消费者:`WorkMqConsume.listenWork1()` 和 `listenWork2()` + +- **订阅模式(Fanout Exchange)**: + - 生产者:`SubscribeProduce.send()` + - 消费者:`SubscribeConsume.listenDead1()` 和 `listenDead2()` + +- **路由模式(Direct Exchange)**: + - 生产者:`RouteProduce.send()` + - 消费者:`RouteConsume.listenDead1()` 和 `listenDead2()` + +- **主题模式(Topic Exchange)**: + - 生产者:`TopicProduce.send()` + - 消费者:`TopicConsume.listenDead1()` 和 `listenDead2()` + +## 参与贡献 + +1. Fork 项目 +2. 创建新分支 +3. 提交代码 +4. 创建 Pull Request + +## 特技 + +- 支持多种 RabbitMQ 消息模式 +- 使用 Spring Boot 快速集成 RabbitMQ +- 每种模式都提供独立的生产者和消费者示例 +- 支持多消费者监听同一队列 +- 配置清晰,便于扩展和学习 \ No newline at end of file -- Gitee