diff --git a/support/cache-mongdb-spring-boot-starter/README.md b/support/cache-mongdb-spring-boot-starter/README.md index f0cc963bd74d3fe0b65bf0c4999ff27b0a0fb84f..fc17002efcb864cca681cacbd637023aa58ecef7 100644 --- a/support/cache-mongdb-spring-boot-starter/README.md +++ b/support/cache-mongdb-spring-boot-starter/README.md @@ -1,60 +1,134 @@ -# cache-mongdb-Spring Boot Starter +```markdown +# 彩虹微服务中台 -CacheMongDbSpringBootStarter集成SpringBoot+XxlJob2.3.0 +## 介绍 -支持Spring Boot 2.3.x +彩虹微服务中台是一个基于 Spring Cloud Alibaba 的微服务架构解决方案,旨在为企业提供一套完整的中台能力支撑。项目集成了认证授权、服务治理、日志管理、分布式事务、消息通知、缓存增强等核心功能,适用于构建高可用、可扩展的分布式系统。 +## 中台概述 -## 使用方法 +本中台框架基于 Spring Boot、Spring Cloud Alibaba 等主流技术栈构建,支持模块化开发、服务注册发现、配置中心、网关路由、权限控制、链路追踪等功能。通过组件化设计,开发者可以快速搭建企业级微服务应用。 -### 1. 添加`xxl-job-spring-boot-starter`依赖到您项目: -Maven +## 相关链接 -```xml - - com.rainbow.framework.support - cache-mongdb-spring-boot-starter - ${lastestVersion} - -``` -### 2. 添加配置项 `application.yaml` -```yaml - -spring: - data: - mongodb: - authentication-database: admin - database: signal - host: 127.0.0.1 - option: - connect-timeout: 10000 - max-connection-idle-time: 1500 - max-connection-life-time: 0 - max-connection-per-host: 200 - max-wait-time: 60000 - socket-timeout: 60000 - password: 123456 - port: 27017 - username: admin +- **GitHub/Gitee 仓库地址**:[请替换为实际地址] +- **文档中心**:[请替换为实际文档地址] +- **Issue 跟踪**:[请替换为实际 Issue 地址] + +## 依赖工具 + +- JDK 1.8+ +- Maven 3.5+ +- Spring Boot 2.6+ +- Spring Cloud Alibaba 2021.x +- Nacos 作为配置中心与注册中心 +- Sentinel 服务熔断与限流 +- Seata 分布式事务 +- Redis 缓存增强 +- XXL-JOB 分布式任务调度 + +## 依赖环境 + +- MySQL 5.7+ +- Redis 6.0+ +- RabbitMQ/Kafka(可选) +- Zookeeper(可选) +- MinIO/OSS(文件存储) + +## 版本说明 + +当前版本:v1.0.0 +更新日志请参考 [CHANGELOG.md](CHANGELOG.md) + +## 系统架构 + +系统采用典型的微服务架构,包含以下核心模块: + +- **认证中心(Auth)** +- **网关(Gateway)** +- **用户中心(User)** +- **权限中心(Permission)** +- **日志中心(Log)** +- **配置中心(Config)** +- **服务注册中心(Nacos)** +- **任务调度中心(XXL-JOB)** +- **消息中心(Message)** +## 权限设计 + +基于 OAuth2 + JWT 的认证体系,支持 RBAC 权限模型,集成 Spring Security 和 Sa-Token,支持多租户权限隔离。 + +## 技术架构 + +- **后端技术栈**: + - Spring Boot 2.6+ + - Spring Cloud Alibaba 2021.x + - MyBatis Plus + Dynamic-Datasource + - Redisson 分布式锁 + - Seata 分布式事务 + - Sentinel 流控降级 + - Nacos 配置中心与注册中心 + - XXL-JOB 任务调度 + - MinIO 文件存储 + - Elasticsearch 日志检索 + +- **前端技术栈**: + - Vue.js / React / Angular(根据项目选择) + - Element UI / Ant Design Vue + +## 项目结构 + +``` +rainbow/ +├── common/ # 公共模块 +│ ├── common-core/ # 核心工具类、常量、异常处理 +│ ├── common-event/ # 事件总线模块 +│ ├── common-handler/ # 全局异常处理、拦截器、过滤器 +│ └── common-remote/ # 远程调用封装(Feign、RestTemplate) +├── support/ # 支持模块(Starter) +│ ├── action-printer-spring-boot-starter/ # 操作日志记录 +│ ├── redis-enhance-spring-boot-starter/ # Redis 增强功能 +│ ├── xxljob-extra-spring-boot-starter/ # XXL-JOB 集成 +│ └── ... # 其他 Starter 模块 +└── application/ # 业务模块 + ├── auth/ # 认证服务 + ├── gateway/ # 网关服务 + ├── user/ # 用户服务 + └── ... # 其他业务服务 ``` -### 3.Java代码使用 -```java - @Autowired - private MongoDAOImpl mongoDao; +## 使用示例 + +### 快速启动 - @ApiOperationSupport(order = 2) - @ApiOperation(value = "添加数据", notes = "添加数据", response = Result.class) - @PostMapping(value = "/insert") - @ResponseBody - public Result insert(@RequestBody List dataList) { - return Result.success(mongoDao.saveBatch(dataList)); - } +1. 安装并启动 Nacos、Redis、MySQL、XXL-JOB 等基础服务。 +2. 修改各模块的 `application.yaml` 配置文件,配置数据库、Redis、Nacos 地址等。 +3. 执行 SQL 脚本初始化数据库(位于 `document/init/` 目录)。 +4. 启动各微服务模块。 +5. 访问网关地址进行测试。 +### 示例代码 + +```java +// 示例:使用操作日志注解 +@ActionLog(project = "user-service", module = "用户管理", actionType = "create") +public void createUser(User user) { + // 创建用户逻辑 +} ``` +## 注意事项 + +- 启动前请确保所有依赖服务已正常运行。 +- 修改配置文件时注意不同环境(dev/test/prod)的配置切换。 +- 使用分布式事务时需确保 Seata Server 正常运行。 +- 日志模块依赖 InfluxDB 或 ELK 套件进行日志聚合。 +## 项目截图 +![系统截图](document/image/system.png) +## 加入我们 +欢迎贡献代码或提出建议!请提交 PR 或 Issue 到本项目仓库。 +``` \ No newline at end of file