[一] 项目简介
Dante Cloud 国内首个支持阻塞式和响应式服务并行的微服务平台。是采用领域驱动模型(DDD)设计思想,以「高质量代码、低安全漏洞」为核心,基于 Spring 生态全域开源技术,高度模块化和组件化设计,支持智能电视、IoT等物联网设备认证,满足国家三级等保要求,支持接口国密数字信封加解密等一系列安全体系的多租户微服务解决方案。独创的可以“一套代码实现微服务和单体两种架构灵活切换”的企业级应用系统。
[二] 项目理念
Dante Cloud 一直秉承着“简洁、高效、包容、务实”的理念,使用微服务领域及周边相关的各类新兴技术或主流技术进行建设,不断地深耕细作、去粗取精、用心打造。目标是构建一款代码质量高、维护投入低、安全防护强
的,可以帮助用户快速跨越架构技术选型、技术研究探索阶段,降低传统项目中因安全漏洞、技术负债、低质代码等潜在隐患所产生的高维护投入,期望像项目名字寓意一样,在行业变革的时期承上启下,助力企业信息化建设和变革的产品。
Dante Cloud 核心关注点是:「高质量的系统代码」、「合理的系统架构」、「低耦合的模块划分」、「高安全性系统实现」、「灵活的功能扩展能力」,「优质的微服务实现」。不会像其它一些系统一样,追求 业务功能 的 丰富 性。堆叠大量无法做到真正通用的功能,反倒会成为负担和干扰,不如由用户自己按照需求灵活设计和实现。
[三] 架构设计
Dante Cloud 除了提供一套完整的微服务架构以外,还支持以单体架构运行。这里的微服务架构和单体架构并不是分离的两套代码,也不是分离的两个项目。而是完全融合的一整套代码,使用时可以根据需要选择是以微服务模式或者单体模式运行。这是 Dante Cloud 微服务最大的特色之一:“一套代码、两种架构”。
基于
Spring Boot
和Spring Cloud
的微服务架构,已经成为企业级应用建设的主流方案。但不可否认的是,搭建一套微服务架构所需的基础设施越来越多,也越来越复杂。仅仅是在开发电脑上搭建一套运行开发调试环境,其复杂度和所需的资源也不容小觑。而很多应用特别是小型应用,在早期开发中或者用户量不大的前期,很多情况下一套单体的,前后端分离的后台就足以满足。完全没有必要上一整套微服务,额外增加复杂度。
Dante Cloud “一套代码、两种架构” 的特点,可以帮助企业在项目早期以单体架构快速建设项目、方便开发人员在本地进行开发以及新技术研究。在项目后期随着用户规模增大以及并发需求提升时,可以快速无缝迁移至微服务架构。
[四] 核心组件
本项目所涉及和使用的核心关键组件中,其中近 80% 均为 Spring 生态原生或其相关或其默认的组件。使用方法以及代码风格一直也在极尽努力尽量与 Spring 生态的标准规范用法保持一致。
- 听过不等于知道
- 知道不等于了解
- 了解不等于会用
- 会用不等于精通
因此,如果你觉得本项目学习曲线高、掌握难度大,不像其它同类开源项目那样“简单”,那么很有可能是你尚未 真正 的了解或者掌握 Spring 生态的相关组件。当然,换个角度,本项目也可以是 深入学习掌握 Spring 生态各组件的优秀案例。
本项目提供了《Dante Cloud 及相关知识学习方法和学习路径的建议》,欢迎感兴趣的朋友阅读,【在线阅读】
Dante Cloud 所使用的核心组件如下:
序号 | Spring 生态组件 | 国内开源组件 |
---|---|---|
1 | Spring Boot | Spring Cloud Alibaba |
2 | Spring Security | Spring Cloud Tencent |
3 | Spring Security OAuth2 | JetCache |
4 | Spring Authorization Server | Mybatis Plus |
5 | Spring Data JPA | JustAuth |
6 | Spring Data MongoDB | WxJava |
7 | Spring Data Redis | Hutool |
8 | Spring Data Envers | sms-spring-boot-starter |
9 | Spring Cloud | -- |
10 | Spring Cloud Bus | -- |
11 | Spring Cloud Stream | -- |
12 | Spring Cloud Gateway | -- |
13 | Spring Cloud Loadbalancer | -- |
14 | Spring Cloud OpenFegin | -- |
15 | Spring Cloud Zookeeper | -- |
16 | Spring Session | -- |
17 | Spring Integration | -- |
18 | Spring Kafka | -- |
19 | Spring WebSocket | -- |
20 | Spring RSocket | -- |
21 | Spring Webflux | -- |
22 | Micrometer | -- |
23 | SpringDoc | -- |
24 | Spring Boot Admin | -- |
[五] 特性介绍
Dante Cloud 演示系统已发布,目前包括在线版、单体离线版(Docker)和微服务镜像版, 欢迎体验使用!
体验地址:https://www.herodotus.vip/get-started/preview/online.html
有任何意见和建议,可以【发 ISSUE】留言。
[六] 更新内容
- 主要更新
- [升级] Spring Boot 版本升级至 3.5.4
- [升级] Spring Cloud Tencent 版本升级至 2.0.2.2-2024.0.1
- [升级] Debezium 版本升级至 3.2
- [升级] Apache Maven 版本升级至 3.9.11
- [升级] liberica jdk 版本升级至 21.0.8-12 和 17.0.16-12
- [重构] 代码升级并适配 Hutool 7.0.0
- 其它更新
- [新增] 新增 Mqtt 客户端动态注册签名密钥校验逻辑
- [新增] 新增基于 Mqtt 协议的设备动态注册功能
- [重构] 前端框架核心通用代码提取为组件,方便后续以不同的 UI 组件库构建前端应用
- [重构] 前端框架提取核心代码至 @herodotus-cloud/framework-kernel 模块,方便不同类型前端共享代码
- [重构] 迁移前端 useRouterStore 代码至模块 @herodotus-cloud/framework-kernel
- [重构] 迁移前端 useEditFinish 代码至模块 @herodotus-cloud/framework-kernel
- [重构] 迁移前端 useSystemTheme 代码至模块 @herodotus-cloud/framework-kernel
- [重构] 前端删除 es-tookit 组件依赖,统一修改为使用 lodash
- [优化] 优化自定义 JPA 多级缓存配置,大幅降低缓存负载和减少多级缓存网络开销
- [升级] loki docker 镜像版本升级至 3.5.2
- [升级] clickhouse docker 镜像版本升级至 25.6.4
- [升级] tdengine docker 镜像版本升级至 3.3.6.13
- 依赖更新
- [升级] alipay-sdk-java 版本升级至 4.40.333.ALL
- [升级] commons-text 版本升级至 1.14.0
- [升级] hutool 版本升级至 7.0.0-M1
- [升级] quasar 版本升级至 2.18.2
- [升级] software.amazon.awssdk 版本升级至 2.32.7
- [升级] software.amazon.awssdk.crt 版本升级至 0.38.7
- [升级] sqlite-jdbc 版本升级至 3.50.3.0
- [升级] wxjava 版本升级至 4.7.7-20250724.164344
- [升级] snappy-java 版本升级至 1.1.10.8
- [升级] blaze-persistence 版本升级至 1.6.16
- [升级] commons-io 版本升级至 2.20.0
- [升级] hypersistence-utils-hibernate-63 版本升级至 3.10.3
- [升级] maven-gpg-plugin 版本升级至 3.2.8
- [升级] webauthn4j 版本升级至 0.29.4.RELEASE
- [升级] checker-qual 版本升级至 3.49.5
- [升级] classgraph 版本升级至 4.8.181
- [升级] error_prone_annotations 版本升级至 2.40.0
- [升级] okio 版本升级至 3.15.0
如果本项目对你有所帮助,欢迎 Star 一波来支持我们!
- Gitcode:https://gitcode.com/dromara/dante-cloud
- Gitee:https://gitee.com/dromara/dante-cloud
- Github:https://github.com/dromara/dante-cloud
还没有评论,来说两句吧...