参考项目
zlt2000 / microservices-platform :完整的oauth2+spring security 应用,详细在线文档 :https://www.kancloud.cn/zlt2000/microservices-platform/919418
[mrbird / FEBS Cloud]:完整的spring cloud 应用,详细在线文档:https://www.kancloud.cn/mrbird/spring-cloud/1265030
- 中冶华天
- 金凤
项目整体架构图

技术选型

注:spring-cloud:2020.0.3 已剔除全部netty框架,ribbon已经被剔除,代替的为spring-cloud-starter-loadbalancer
运行环境
| 工具 | 版本 |
|---|---|
| Java | 8 |
| Maven | 3.5.3 |
| Redis | 4+ |
| Mysql | 5.7+ ,8.0.14+ |
| Elasticsearch | 7.x |
| 代码仓库 | 阿里云 |
| Maven镜像 | https://maven.aliyun.com/repository/public |
| IDE | IDEA |
| Docker | 1.13.1+ |
核心依赖
| pm-cloud | spring-cloud-alibaba | spring-boot | spring-cloud | spring-cloud-starter-oauth2 | security-oauth2 |
|---|---|---|---|---|---|
| 1.0-SNAPSHOT | 2021.1 | 2.5.4 | 2020.0.3 | 2.2.5.RELEASE | 2.3.4.RELEASE |
项目结构
com.np-pm-cloud├── pm-common #项目公共模块│ ├── pm-common-core #core,项目的核心模块,依赖于log-starter和repository-starter,用于封装工具类,接口和常量│ ├── pm-common-dataway-starter #dataway-starter,dataway的装配│ ├── pm-common-datasource-starter #datasource-starter,项目数据源管理模块,对于mybatis-plus等方面的扩展和封账│ ├── pm-common-elasticsearch-starter #elasticsearch-starter,用于ES的装配│ ├── pm-common-file-core-starter #file-core-starter,用于文件服务的装配│ ├── pm-common-loadbalancer-starter #loadbalancer-starter模块,服务之间的调用和负载均衡│ ├── pm-common-log-starter #log-starter,用于管理整个项目的日志│ ├── pm-common-redis-starter #redis-starter,用于封装redis│ ├── pm-common-repository-starter #repository-starter,用于存放公共实体类│ ├── pm-common-rocket-api-starter #rocket-api-starter,rocket-api装配│ ├── pm-common-security-starter #security-starter模块,oauth2用于认证,spring security用于鉴权│ ├── pm-common-sentinel-starter #sentinel-starter模块,流量控制、熔断降级│ ├── pm-common-spring-boot-starter #spring-boot-starter模块,公共spring boot封装以及公共feign的装配│ ├── pm-common-swagger2-starter #swagger-starter模块,用于管理swagger├── pm-configure #配置中心模块,用于导入公共配置文件├── pm-doc #项目文档目录,保存项目的文档,不作为开发使用│ ├── img #保存项目用图│ ├── sql #保存项目必要sql文件│ └── 规范 #保存项目的开发规范文件├── pm-job #定时任务模块,使用xxl-job框架│ ├── pm-job-admin #定时任务管理服务│ ├── pm-job-run #定时任务执行服务├── pm-log #日志系统├── pm-msg #消息系统├── pm-sys #核心系统├── pm-auth #认证系统├── pm-test #测试demo└── README.md #系统文档说明
