赞
踩
Dante Cloud 是国内首个支持阻塞式和响应式融合的微服务。以「高质量代码、低安全漏洞」为核心,采用领域驱动模型(DDD)设计思想,完全基于 Spring 生态全域开源技术和 OAuth2.1 协议,支持智能电视、IoT等物联网设备认证,满足国家三级等保要求、支持接口国密数字信封加解密、防刷、高防XSS和SQL注入等一系列安全体系的多租户微服务解决方案。
Dante Cloud 一直秉承着“简洁、高效、包容、务实”的理念,使用微服务领域及周边相关的各类新兴技术或主流技术进行建设,不断地深耕细作、去粗取精、用心打造。目标是构建一款代码质量高、维护投入低、安全防护强
的,可以帮助用户快速跨越架构技术选型、技术研究探索阶段,降低传统项目中因安全漏洞、技术负债、低质代码等潜在隐患所产生的高维护投入,期望像项目名字寓意一样,在行业变革的时期承上启下,助力企业信息化建设和变革的产品。
Dante Cloud 在之前的版本中,一直采用的是传统的阻塞式开发方式,使用的也是业界主流的技术和组件。虽然,有很多自身独有的亮点功能,但与业界中同类型的产品并没有太大差别。
2023年年底,一网友建议:希望Dante Cloud支持GRPC和WebFlux容器以拉开跟同类型开源框架性能差异。这个建议打开了一个新的思路,因此,进入2024年以后,Dante Cloud 将响应式版本的设计和开发作为重点,努力将响应式相关的一些新的技术融入到产品中来。
经过几个月的不懈努力,终于不负所望,在开源三周年之际,同时支持阻塞式
和响应式
融合生的版本发布了。
Spring Boot
已升级至 3.3.0Spring Authorization Server
已升级至 1.3.0阻塞式
微服务与基于 Reactor
和 WebFlux
的响应式
微服务同时运行在一套系统之中响应式
方式开发,可根据自身项目对资源吞吐量、资源消耗、特殊功能性能保障的需求,灵活的选择是采用响应式
还是阻塞式
来开发对应的服务。Spring Authorization Server
深度扩展的各种特性的前提下,实现响应式
服务的动态鉴权与现有体系的完全融合(无需在代码中使用@PreAuthorize
写死权限,全部通过后台动态管理)Reactor
重构大量核心代码,进一步提升本系统代码质量和运行效能响应式
和阻塞式
不同环境下自动配置的适配能力响应式
和阻塞式
不同类型服务,Session 共享体系以及自定义 Session 体系的完美融合(谁说微服务就一定用不到 Session :))。GRPC
服务间调用和通信方式,系统核心服务间调用支持 OpenFeign
和 GRPC
两种方式,可通过修改配置实现两种方式的切换。RSocket
全面重写 WebSocket 消息系统,实现 WebSocket 的响应式
改造以及与 Spring Security 体系的全面集成。支持多实例、跨服务的私信和广播响应式固然有其优势所在,但是使用响应式也不得面对一些现实问题:
所以,还是要具体看应用系统的类型,在条件不具备的情况下没有必要做到纯血响应式
。
响应式
对阻塞式
的好处,网上有大把的文章介绍,具体就不赘述了。对于实际应用中比较明显的优势:
响应式
资源的利用效能更高,对于高资源消耗的功能,响应式
的优势更突出正因为 Dante Cloud 用了很多 Spring Integration 的内容,传统阻塞式方式越用越别扭,才越来越觉得有必要做响应式支持。如果有时间可以好好看看 Spring Integration,也许会为你打开一个新的世界。
Flux
和 Mono
两个类。把这两个类的方法用透、弄明白,基本上就可以消除所有开发阻碍了。响应式
的流
式开发思维世上无难事只怕有心人
总结过往,走向未来!
分支名称 | 对应 Spring 生态版本 | 对应 JDK 版本 | 用途 | 现状 |
---|---|---|---|---|
master | Spring Boot 3.3 和 Spring Cloud 2023.0.1 | JDK 17 | 主要发布分支 | 推荐使用代码分支 |
develop | Spring Boot 3.3 和 Spring Cloud 2023.0.1 | JDK 17 | Development 分支 | 新功能、ISSUE 均以此分支作为开发,发布后会 PR 至 master 分支。开发分支不保证可用 |
reactive-master | Spring Boot 3.3 和 Spring Cloud 2023.0.1 | JDK 21 | 响应式主要发布分支 | 推荐使用的响应式代码分支 |
reactive-develop | Spring Boot 3.3 和 Spring Cloud 2023.0.1 | JDK 21 | 响应式 Development 分支 | 下一代响应式微服务版本开发分支。开发分支不保证可用 |
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,新增文档站点 https://www.herodotus.vip 。 该站点目前包含矫正和重新梳理后的系统部署相关内容,后续计划根据系统涉及的详细知识点和模块陆续补充对应设计实现和认知理解相关文章。 原有站点如无特殊原因,仍旧会保留。
欢迎 Star 一波来支持我们!
Gitee:https://gitee.com/dromara/dante-cloud
Github:https://github.com/dromara/dante-cloud
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。