
“一套代码、两种架构,可以灵活切换微服务和单体两种架构”的企业级微服务系统
Gitcode 仓库 | Github 仓库 | Gitee 仓库 | 旧版文档 | 新版文档
Dante Cloud 国内首个支持阻塞式和响应式服务并行的微服务平台。是采用领域驱动模型(DDD)设计思想,以「高质量代码、低安全漏洞」为核心,基于 Spring 生态全域开源技术,高度模块化和组件化设计,支持智能电视、IoT等物联网设备认证,满足国家三级等保要求,支持接口国密数字信封加解密等一系列安全体系的多租户微服务解决方案。独创的可以“一套代码实现微服务和单体两种架构灵活切换”的企业级应用系统。
Dante Cloud 一直秉承着“简洁、高效、包容、务实”的理念,使用微服务领域及周边相关的各类新兴技术或主流技术进行建设,不断地深耕细作、去粗取精、用心打造。目标是构建一款代码质量高、维护投入低、安全防护强的,可以帮助用户快速跨越架构技术选型、技术研究探索阶段,降低传统项目中因安全漏洞、技术负债、低质代码等潜在隐患所产生的高维护投入,期望像项目名字寓意一样,在行业变革的时期承上启下,助力企业信息化建设和变革的产品。
Spring Boot 已升级至 3.4.0Spring Authorization Server 已升级至 1.4.0阻塞式 微服务与基于 Reactor 和 WebFlux 的 响应式 微服务同时运行在一套系统之中响应式 方式开发,可根据自身项目对资源吞吐量、资源消耗、特殊功能性能保障的需求,灵活的选择是采用 响应式 还是 阻塞式 来开发对应的服务。Spring Authorization Server 深度扩展的各种特性的前提下,实现 响应式 服务的动态鉴权与现有体系的完全融合(无需在代码中使用 @PreAuthorize 写死权限,全部通过后台动态管理)Reactor 重构大量核心代码,进一步提升本系统代码质量和运行效能响应式 和 阻塞式 不同环境下自动配置的适配能力响应式 和 阻塞式 不同类型服务,Session 共享体系以及自定义 Session 体系的完美融合(谁说微服务就一定用不到 Session :))。GRPC 服务间调用和通信方式,系统核心服务间调用支持 OpenFeign 和 GRPC 两种方式,可通过修改配置实现两种方式的切换。RSocket 全面重写 WebSocket 消息系统,实现 WebSocket 的 响应式 改造以及 RSocket 与 Spring Security 体系的全面集成。支持多实例、跨服务的私信和广播Loki + Grafana 生态的轻量级日志中心和链路追踪解决方案,使用 OSS 作为数据存储,极大地降低资源需求,可作为原有 Skywalking 和 ELK 重量级体系的备选方案,根据实际需要切换。Spring Cloud Tencent 和 Spring Cloud 原生微服务全家桶等两种基础设施支持。Spring Cloud Alibaba、Spring Cloud Tencent 和 Spring Cloud 原生微服务全家桶三种基础设值切换能力,可以以相对便捷的方式切换使用 Alibaba、Tencent、Spring 等基础设施环境。可根据自身实际需求选择,不再局限于只能在某一种基础设施环境中运行。Spring Authorization Server 和 Spring Data JPA 实现多租户系统架构, 支持 Database 和 Schema 两种模式。Spring Data JPA,重新构建 Spring Authorization Server 基础数据存储代码,替代原有 JDBC 数据访问方式,破除 Spring Authorization Server 原有数据存储局限,扩展为更符合实际应用的方式和设计。Spring Authorization Server,在 OAuth 2.1 规范基础之上,增加自定义 Resource Ownership Password (密码) 认证模式,以兼容现有基于 OAuth 2 规范的、前后端分离的应用,支持 Refresh Token 的使用。Spring Authorization Server,在 OAuth 2.1 规范基础之上,增加自定义 Social Credentials (社会化登录) 认证模式,支持手机短信验证码、微信小程序、基于 JustAuth 的第三方应用登录, 支持 Refresh Token 的使用。Spring Authorization Server 默认的 Client Credentials 模式,实现真正的使用 Scope 权限对接口进行验证。 增加客户端 Scope 的权限配置功能,并与已有的用户权限体系解耦Spring Authorization Server Authorization Code PKCE 认证模式Spring Authorization Server 的标准的 JWT Token 加密校验方式外,支持基于自定义证书的 JWT Token 加密校验方式,可通过配置动态修改。Opaque Token (不透明令牌) 格式及校验方式,降低 JWT Token 被捕获解析的风险。可通过修改配置参数,设置默认 Token 格式是采用 Opaque Token 格式还是 JWT Token 格式。OpenID Connect (OIDC) 协议,系统使用时可根据使用需求,通过前端开关配置,快速切换 OIDC 模式和传统 OAuth2 模式Authorization Code、Resource Ownership Password、Social Credentials 几种模式,全面融合 IdToken、Opaque Token、JWT Token 与现有权限体系,同时提供 IdToken 和 自定义 Token 扩展两种无须二次请求的用户信息传递方式,减少用户信息的频繁请求。Spring Authorization Server 授权码模式登录认证页面和授权确认页面,授权码模式登录采用数据加密传输。支持多种验证码类型,暂不支持行为验证码。Spring Authorization Server 的、支持智能电视、IoT等物联网设备认证模式Spring Security 权限注解以及权限方法,即可实现接口鉴权以及权限的动态修改。采用分布式鉴权方案,规避 Gateway 统一鉴权的压力以及重复鉴权问题微服务架构下的 Session 可以选择不用,但是不能没有。SM2 (非对称) 和 SM4 (对称加密) 算法,实现基于数字信封技术的秘钥动态生成加密传输。利用“一人一码机制”,实现前后端数据进行动态加密传输与。Spring Authorization Server OAuth 2.1 授权模式深度融合,构建统一体系的数据传输加密。@PreAuthorize 注解权限与 URL 权限,通过后端动态配置,无须在代码中配置 Spring Security 权限注解以及权限方法,可实现接口鉴权以及权限的统一管理和动态修改JetCache 分布式两级缓存,完美实现 JPA Hibernate 二级缓存,支持各类查询数据缓存以及 JPA @ManyToMany, @ManyToOne等关联查询。完美解决 Spring Cache 仅使用本地缓存、创建 Key 繁琐和分页数据无法更新的问题。支持多实例服务本地缓存和远程缓存数据同步,同时支持 Mybatis Plus 二级缓存OAuth2、Spring Validation 等多方错误体系并有机整合 HTTP 状态码。采用 Customizer 模式,采用错误码自动计算和创建模式,支持代码模块级错误码灵活定义扩展。响应结果更加多样灵活,反馈结果也更加人性化,便于理解和定位问题。自 v3.3.6.0 版本起,Dante Cloud 以及 Dante OSS 和 Dante Engine 子项目开源协议 【永久】 变更为 Apache License Version 2.0。可用于个人学习、毕设,允许商业使用,但禁止二次开源。
使用时务必遵守以下补充条款。
因频繁出现修改包名、删除作者版权信息、二次开源的行为,为保护作者权益,Dante OSS 和 Dante Engine 子项目需登记申请,等审批后开放源码,【查看详情或登记】




| 组件 | 版本 |
|---|---|
| Spring Boot | 3.4.0 |
| Spring Cloud | 2024.0.0 |
| Spring Cloud Alibaba | 2023.0.1.2 |
| Spring Cloud Tencent | 1.14.0-2023.0.0 |
| Spring Authorization Server | 1.4.0 |
| Spring Boot Admin | 3.4.1 |
| Nacos | 2.4.3 |
| Sentinel | 1.8.8 |
| Seata | 1.7.0 |
Spring 全家桶版本对应关系,详见:版本说明
本系统版本号,分为四段。
| 分支名称 | 对应 Spring 生态版本 | 对应 JDK 版本 | 用途 | 现状 |
|---|---|---|---|---|
| master | Spring Boot 3.4 和 Spring Cloud 2024.0.0 | JDK 17 | 主要发布分支 | 推荐使用代码分支 |
| develop | Spring Boot 3.4 和 Spring Cloud 2024.0.0 | JDK 17 | Development 分支 | 新功能、ISSUE 均以此分支作为开发,发布后会 PR 至 master 分支 |
| 3.2.X-3.3.X | Spring Boot 3.3 和 Spring Cloud 2023.0.X | JDK 17 | 稳定版本分支 | 稳定版本分支 |
| 3.1.X | Spring Boot 3.1 和 Spring Cloud 2022.0.X | JDK 17 | 历史版本,停止维护 | 基于 Spring Boot 3.1 时代开发的代码分支,稳定可用,不再维护 |
| 2.7.X | Spring Boot 2.7 和 Spring Cloud 2021.0.X | JDK 8 | 历史版本,停止维护 | 基于 Spring Boot 2.7 时代开发的代码分支,稳定可用,不再维护 |
| spring-security-oauth2 | Spring Boot 2.6 和 Spring Cloud 2021.0.X | JDK 8 | 历史代码,不再维护 | 基于原 Spring Security OAuth2 实现的微服务,稳定可用,因相关组件均不在维护,所以该版本不再维护 |
dante-cloud ├── configurations -- 配置文件脚本和统一Docker build上下文目录 ├── dependencies -- 工程Maven顶级依赖,统一控制版本和依赖 ├── module -- 依赖组件半成品拼装工程 ├ ├── dante-module-common -- Module 相关模块公共辅助代码模块 ├ ├── dante-module-metadata -- 权限元数据同步模块 ├ ├── dante-module-social -- 社交登录模块 ├ ├── dante-module-strategy -- UAA 核心数据访问策略模块 ├ └── dante-monomer-autoconfigure -- 单体版自动配置模块 ├── packages -- 基础核心Starter ├ ├── authorization-spring-boot-starter -- OAuth2 认证基础Starter,主要用于 UAA 认证服务器以及单体版 Dante Cloud ├ ├── facility-spring-boot-starter -- 基础设施切换依赖starter ├ └── service-spring-boot-starter -- 平台接入应用服务通用 Starter ├── platform -- 平台核心服务 ├ ├── dante-cloud-gateway -- 服务网关 ├ ├── dante-cloud-message -- 消息服务 ├ ├── dante-cloud-monitor -- Spring Boot Admin 监控服务 ├ ├── dante-cloud-upms -- 统一权限管理系统服务 ├ └── dante-cloud-uaa -- 账户管理和统一认证模块 ├── services -- 平台业务服务 ├ ├── dante-cloud-bpmn-ability -- 工作流服务 ├ ├── dante-cloud-bpmn-logic -- 工作流基础代码包 ├ ├── dante-cloud-oss-ability -- 对象存储服务 └── └── dante-monomer-application -- Dante Cloud 单体版应用模块
Dante Cloud 已通过由第三方进行的软件出厂安全测试以及等保测试。详情参见:安全测试说明
尽量不修改 Dante Cloud 以外的项目源码,如 Dante Engine、Dante OSS。如果修改了,请 Pull Requests 上来,否则代码与官方不同步,可能会将对你的日后升级增加难度。
每个版本升级,我们都会附带详细更新日志:https://www.herodotus.cn/others/log/changelog.html。 在这里,你可以看到 Dante Cloud 新增哪些新功能和改进。 针对有较大变化、差异的版本,我们都会负载详细的升级指南:https://www.herodotus.cn/guide/get-start/notices.html。 在这里,你可以看到 Dante Cloud 不同版本对应升级方法。
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
| 序号 | 赞助人 | 赞助时间 | 序号 | 赞助人 | 赞助时间 | 序号 | 赞助人 | 赞助时间 |
|---|---|---|---|---|---|---|---|---|
| 1 | ご沉默菋噵 | 2021-10-25 | 2 | 偷土豆的人 | 2021-11-24 | 3 | lorron | 2022-04-04 |
| 4 | 在云端 | 2022-12-26 | 5 | 西晽 | 2022-12-27 | 6 | p911gt3rs | 2023-01-03 |
| 7 | jacsty | 2023-01-31 | 8 | hubert_rust | 2023-03-16 | 9 | Zkey Z | 2023-03-18 |
| 10 | 志国欧巴 | 2023-03-27 | 11 | michael | 2023-04-07 | 12 | 大叔丨小巷 | 2023-04-11 |
| 13 | sun_left | 2023-04-19 | 14 | time、sand | 2023-07-06 | 15 | 印第安老斑鸠 | 2023-09-09 |
| 16 | 一阵风 | 2023-12-10 | 17 | Jack | 2024-03-01 | 18 | onehelper | 2024-05-24 |
| 19 | 宁哥 | 2024-05-29 | 20 | cryptoneedle | 2024-11-01 | 21 |