参考项目
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 #系统文档说明