cloud开源项目-技术选型

一、基础运行环境

表格

类别

组件名称

版本号

用途说明

运行环境

JDK

17 (LTS)

统一编译、运行环境,全局编码 UTF-8

构建工具

Maven

3.9.11

多模块项目构建、依赖管理、打包

容器环境

Docker

26.1.3

应用与中间件容器化部署

容器编排

Docker Compose

v2.27.1

本地 / 测试环境一键启动所有中间件 & 服务


二、数据存储层

表格

组件名称

版本号

存储场景

MySQL

8.0.36

结构化业务数据、租户、权限、菜单、XXL-Job 调度数据

Redis

7.2.4

分布式缓存、会话存储、分布式锁、限流、计数器

MongoDB

7.0.34

非结构化数据、设备日志、大文本、IoT 上报数据


三、核心中间件

表格

组件名称

版本号

核心能力

Nacos

2.4.3

服务注册 & 发现、统一配置中心、多环境命名空间隔离、动态配置刷新

MinIO

RELEASE.2023-08-09T23-30-22Z

私有对象存储,存放图片、附件、文件

RocketMQ

5.2.0

分布式消息队列:异步解耦、流量削峰、事件通知、事务消息

XXL-Job

2.4.0

分布式定时任务,可视化后台、动态任务、执行日志、任务告警


四、Spring 生态统一版本基线(核心依赖约束)

整套基于 Spring Boot 3.x 体系,完美适配 JDK17,父 POM 统一管理版本。

表格

框架名称

版本号

备注

Spring Boot

3.2.10

主框架,生产稳定版

Spring Cloud

2023.0.3 (Leyton)

Spring Boot3 配套微服务生态

Spring Cloud Alibaba

2023.0.1.0

国产微服务全家桶,适配 Nacos/Sentinel


五、后端技术栈(按功能模块划分)

5.1 微服务网关 & 负载均衡

表格

组件

版本

说明

Spring Cloud Gateway

框架内置

统一入口、路由转发、跨域、请求过滤、网关限流、统一鉴权

Spring Cloud LoadBalancer

框架内置

客户端负载均衡,替代 Ribbon

5.2 流量治理 & 分布式事务

表格

组件

版本

用途

Sentinel

1.8.8

接口限流、熔断降级、热点限流、系统保护、可视化控制台

Seata

1.7.2

分布式事务,默认 AT 无侵入模式,支持跨微服务事务

5.3 认证 & 权限框架(Sa-Token)

表格

组件

版本

核心能力

Sa-Token

1.37.0

登录认证、JWT、RBAC 角色权限、菜单 / 按钮权限、多端登录、踢人下线、接口防刷、单点登录

BCrypt

内置

密码不可逆加密存储

5.4 持久层 & 数据库连接池

表格

组件

版本

说明

MyBatis-Plus

3.5.5

ORM 框架、通用 CRUD、分页、逻辑删除、乐观锁、多租户插件、数据权限插件

HikariCP

Spring Boot3 内置

高性能数据库连接池(替代 Druid),轻量、低延迟

Spring Data Redis

框架内置

Redis 基础操作封装

Redisson

3.27.0

分布式锁、延时队列、分布式工具集

Spring Data MongoDB

4.2.10

MongoDB 文档数据库操作、索引、聚合查询

5.5 参数校验 & 代码增强工具

表格

组件

版本

用途

Jakarta Validation

3.0.2

请求参数校验:@NotNull / @NotBlank / @Valid

Lombok

1.18.30

简化实体类代码,自动生成 Get/Set/ 构造方法

Hutool

6.5.0

通用工具库:字符串、日期、加密、文件、网络等

MapStruct

1.5.5.Final

高性能 PO / DTO / VO 对象映射

5.6 接口文档

表格

组件

版本

说明

Knife4j

4.3.0

基于 SpringDoc OpenAPI3,在线接口文档、接口调试,适配 Spring Boot3

5.7 日志体系(轻量化,无集中收集)

表格

组件

说明

SLF4J + Logback

Spring Boot 内置,本地文件日志、按日期 / 级别分割,不部署 ELK


六、前端技术栈(PC 管理后台)

表格

技术 / 组件

版本

作用

Vue 3

3.4.x

前端核心框架

Vite

5.x

前端构建工具,快速编译启动

TypeScript

5.3.x

静态类型约束,提升代码健壮性

Element Plus

2.4.x

PC 端 UI 组件库(既定选型)

Vue Router 4

4.x

前端路由,动态路由权限控制

Pinia

2.x

全局状态管理

Axios

1.6.x

HTTP 请求库,对接后端 Sa-Token 鉴权

ESLint + Prettier

最新稳定版

代码规范、格式化校验

扩展可选:Uni-App(一套代码编译 H5、小程序、APP)


七、监控 & 运维组件

表格

组件

版本

用途

Spring Boot Admin

3.2.0

微服务实例健康检查、配置查看、在线日志、服务监控

Prometheus

2.47

指标采集、时序数据存储

Grafana

10.2

可视化监控大盘、图表展示、自定义告警

SkyWalking

9.4.0

分布式链路追踪,无侵入探针,排查调用链、接口耗时、异常

八、项目模块拆分(多模块微服务结构,支持单体 / 微服务双部署)

project-root 项目根目录
├─ boot-dependencies        # 父POM:全局版本统一管理(所有组件版本声明)
├─ boot-framework           # 公共基础框架(所有模块依赖)
│  ├─ framework-common      # 通用常量、统一返回体、全局异常、工具封装
│  ├─ framework-satoken     # Sa-Token 认证、权限、会话配置
│  ├─ framework-mybatis-plus# MP、多租户、数据权限、HikariCP 连接池配置
│  ├─ framework-redis       # Redis + Redisson 封装
│  ├─ framework-mongo       # MongoDB 配置与封装
│  ├─ framework-minio       # MinIO 对象存储封装
│  ├─ framework-rocketmq    # RocketMQ 消息队列封装
│  ├─ framework-sentinel    # 限流熔断配置
│  ├─ framework-seata       # 分布式事务配置
│  └─ framework-xxl-job     # XXL-Job 定时任务客户端配置
├─ boot-gateway             # 网关服务(全局唯一入口)
├─ boot-module-system       # 系统管理:用户、角色、菜单、租户、字典、操作日志
├─ boot-module-infra        # 基础设施:文件管理、代码生成、第三方接口
├─ boot-module-bpm          # 工作流模块(可选业务)
├─ boot-module-member       # 会员模块(可选业务)
├─ boot-module-mall         # 商城模块(可选业务)
├─ boot-module-crm          # CRM 客户管理(可选业务)
├─ boot-module-wms          # WMS 仓库管理(可选业务)
├─ boot-module-iot          # IoT 物联网(可选业务)
├─ boot-module-ai           # AI 大模型对接(可选业务)
└─ boot-server              # 单体聚合包:全模块合并,支持单体模式启动