Eurynome Cloud 企业级技术中台微服务架构
企业级技术中台微服务架构与服务能力开发平台
Eurynome Cloud是一款企业级微服务架构和服务能力开发平台。基于Spring Boot 2.6.2、Spring Cloud 2021.0.0、Spring Cloud Alibaba 2021.1、Nacos 2.0.3 等最新版本开发,遵循SpringBoot编程思想,高度模块化和可配置化。具备服务发现、配置、熔断、限流、降级、监控、多级缓存、分布式事务、工作流等功能,代码简洁,架构清晰,非常适合学习和企业作为基础框架使用。
平台定位
- 构建成熟的、完善的、全面的,基于 OAuth2 的、前后端分离的微服务架构解决方案。
- 面向企业级应用和互联网应用设计开发,既兼顾传统项目的微服务化,又满足互联网应用开发建设、快速迭代的使用需求。
- 平台架构使用微服务领域及周边相关的各类新兴技术或主流技术进行建设,是帮助快速跨越架构技术选型、研究探索阶段的利器。
- 代码简洁规范、结构合理清晰,是新技术开发应用的典型的、综合性案例,助力开发人员对新兴技术的学习和掌握。
[1]、技术栈和版本说明
(1)Spring全家桶及核心技术版本
组件 | 版本 |
---|---|
Spring Boot | 2.6.2 |
Spring Cloud | 2021.0.0 |
Spring Cloud Alibaba | 2021.1 |
Spring Boot Admin | 2.5.5 |
Nacos | 2.0.3 |
Sentinel | 1.8.3 |
Seata | 1.3.0 |
(2)所涉及的相关的技术:
- 持久层框架: Spring Data Jpa & Mybatis Plus
- API网关:Spring Cloud Gateway
- 服务注册&发现和配置中心: Alibaba Nacos
- 服务消费:Spring Cloud OpenFeign & RestTemplate & OkHttps
- 负载均衡:Spring Cloud Loadbalancer
- 服务熔断&降级&限流:Alibaba Sentinel
- 服务监控:Spring Boot Admin
- 消息队列:使用Spring Cloud消息总线Spring Cloud Bus 默认Kafka 适配RabbitMQ
- 链路跟踪:Skywalking
- 分布式事务:Seata
- 数据缓存:JetCache + Redis + Caffeine, 自定义多级缓存
- 数据库: Postgresql,MySQL,Oracle ...
- JSON序列化:Jackson & FastJson
- 文件服务:阿里云OSS/Minio
- 数据调试:p6spy
- 日志中心:ELK
- 日志收集:Logstash Logback Encoder
[2]、工程结构
eurynome-cloud
├── configurations -- 配置文件脚本和统一Docker build上下文目录
├── dependencies -- 工程Maven顶级依赖,统一控制版本和依赖
├── packages -- 基础通用依赖包
├ ├── eurynome-cloud-assistant -- Spring相关公共辅助工具、注解相关工具代码组件
├ ├── eurynome-cloud-cache -- Cache和Redis工具模块组件
├ ├── eurynome-cloud-captcha -- 验证码模块组件
├ ├── eurynome-cloud-data -- 数据持久化等数据处理相关代码组件
├ ├── eurynome-cloud-kernel -- 微服务接入平台必备组件
├ ├── eurynome-cloud-message -- 消息处理相关代码组件
├ ├── eurynome-cloud-oauth -- OAuth2通用代码
├ ├── eurynome-cloud-oauth-starter -- 自定义OAuth2 Starter,Athena单体版核心Starter
├ ├── eurynome-cloud-pay -- 支付核心组件包
├ ├── eurynome-cloud-rest -- Rest相关代码组件
├ ├── eurynome-cloud-sercurity -- Security通用代码
├ ├── eurynome-cloud-starter -- 微服务核心Starter
├ ├── eurynome-cloud-web -- Web 应用基础组件
├ └── eurynome-cloud-websocket -- WebSocket核心代码包
├── platform -- 平台核心服务
├ ├── eurynome-cloud-gateway -- 服务网关
├ ├── eurynome-cloud-monitor -- Spring Boot Admin 监控服务
├ └── eurynome-cloud-uaa -- 统一认证模块
├── services -- 平台业务服务
├ ├── eurynome-cloud-upms-logic -- 通用用户权限service
├ ├── eurynome-cloud-upms-rest -- 通用用户权限rest 接口
├ ├── eurynome-cloud-upms-ability -- 通用用户权限服务
├ ├── eurynome-cloud-upms-rest -- 工作流基础代码包
└── └── eurynome-cloud-bpmn-ability -- 工作流服务