Dante Cloud 3.1.2.2 发布,采用领域驱动设计(DDD)的微服务架构
Dante Cloud 是一款企业级微服务架构和服务能力开发平台,是采用领域驱动设计(DDD)思想的、全面拥抱 Spring Authorization Server 的、基于 OAuth2.1 协议的、支持智能电视、IoT等物联网设备认证的微服务解决方案。基于 Spring Authorization Server 1.1.1、Spring Boot 3.1.2、Spring Cloud 2022.0.4、Spring Cloud Tencent 1.11.8-2022.0.1、Spring Cloud Alibaba 2022.0.0.0、Nacos 2.2.4 等主流技术栈开发的多租户系统,遵循 SpringBoot 编程思想,高度模块化和可配置化。具备服务发现、配置、熔断、限流、降级、监控、多级缓存、分布式事务、工作流等功能
平台定位
- 构建成熟的、完善的、全面的,基于 OAuth2.1 的、前后端分离的微服务架构解决方案。
- 面向企业级应用和互联网应用设计开发,既兼顾传统项目的微服务化,又满足互联网应用开发建设、快速迭代的使用需求。
- 平台架构使用微服务领域及周边相关的各类新兴技术或主流技术进行建设,是帮助快速跨越架构技术选型、研究探索阶段的利器。
- 代码简洁规范、结构合理清晰,是新技术开发应用的典型的、综合性案例,助力开发人员对新兴技术的学习和掌握。
[1] 本次更新内容
- 【主要更新】
- [升级] Spring Boot Admin 版本升级至 3.1.4
- [升级] Camunda 版本升级至 7.20.0-alpha4
- [升级] Minio 镜像版本升级至 RELEASE.2023-08-04T17-40-21Z
- [升级] 支持 Apache Maven 3.9.4 版本
- 【其它更新】
- [新增] 完成存储桶新增、删除、列表、是否存在等基础功能定义以及统一 REST API 实现。
- [删除] 删除 Minio、S3、Aliyun 与统一实现重复的 Service API 以及无用的代码。
- [新增] Dante Cloud Cookbook 专栏
- [完成] Dante Cloud 及相关知识学习方法和学习路径的建议
- [完成] OAuth 2 中的 Scope 与 Role 深度解析
- 【依赖更新】
- [升级] bcprov-jdk15to18 版本升级至 1.76
- [升级] guava 版本升级至 32.1.2
- [升级] zxing 版本升级至 3.5.2
- [升级] redisson 版本升级至 3.23.2
- [升级] springdoc 版本升级至 2.2.0
- [升级] aws-java-sdk-s3 版本升级至 1.12.523
- [升级] fastjson2 版本升级至 2.0.38
- [升级] hutool 版升级至 6.0.0-M5
- [升级] wxjava 版本升级至 4.5.4.B
- [升级] tencentcloud-sdk-java-sms 版本升级至 3.1.820
- [升级] qiniu-java-sdk 版本升级至 7.14.0
- [升级] alipay-sdk-java 版本升级至 4.38.41.ALL
- 【更新说明】
- Dante Cloud Cookbook 专栏详情请查阅官方文档 Cookbook 栏目
[2] Dante Cloud 3.0.0 新特性
- 核心基础依赖便捷切换
- 新增
Spring Cloud Tencent
和Spring Cloud
原生微服务全家桶等两种基础设施支持。 - 新增
Spring Cloud Alibaba
、Spring Cloud Tencent
和Spring Cloud
原生微服务全家桶三种基础设值切换能力,可以以相对便捷的方式切换使用 Alibaba、Tencent、Spring 等基础设施环境。可根据自身实际需求选择,不再局限于只能在某一种基础设施环境中运行。
- 支持
GraalVM
原生镜像
- 整体调整各类模块 pom build 配置,适当增加冗余重复配置,以支持
Spring Native
或GraalVM
编译需要。规避对所有模块进行 Native 编译,而导致错误问题。
Spring Authorization Server
全特性支持及扩展
- 基于
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 统一鉴权的压力以及重复鉴权问题 - OAuth2 UserDetails 核心数据支持直连数据库获取和 Feign 远程调用两种模式。OAuth2 直连数据库模式性能更优,Feign 访问远程调用可扩展性更强。可通过配置动态修改采用策略方式。
- 基于自定义 Session,混合国密
SM2
(非对称) 和SM4
(对称加密) 算法,实现基于数字信封技术的秘钥动态生成加密传输。利用 “一人一码机制”,实现密码模式登录数据进行动态加密传输。配合 OAuth2 Client 验证,保护接口调用和前后端数据传输的合理性及安全性。
- 采用
pnpm monorepo
重构前端
- 未使用任何流行开源模版,使用全新技术栈,完全纯"手写"全新前端工程。
- 借鉴参考流行开源版本的使用和设计,新版前端界面风格和操作习惯尽量与当前流行方式统一。
- 充份使用 Typescript 语言特性,解决大量类型校验问题,尽可能规避 "any" 式的 Typescript 编程语言使用方式。
- 充份使用 Composition Api 和 Hooks 等 Vue3 框架新版特性进行代码编写。
- 充份利用 Component、Hooks 以及 Typescript 面向对象等特性,抽取通用组件和代码,尽可能降低工程重复代码。
- 对较多 Quasar 基础组件和应用功能组件进行封装,以方便代码的统一修改维护和开发使用。
- 对生产模式下,对基于 Vite3 的工程打包进行深度性能优化。
- 提供以 docker-compose 方式,对工程生产代码进行容器化打包和部署。
- 该版本基于 pnpm,采用 monorepo 模式对前端工程进行重构。构建 monorepo 版本前端,是为扩展更多功能、增加应用级功能做铺垫
- 抽取 utils、components、apis、bpmn-designer 等相关代码,形成共享模块。
- 共享模块已进行优化配置,可编译成独立的组件,单独以组件形式进行发布。
- 代码以共享模块的方式进行单独维护开发,降低现有工程代码复杂度,便于后续功能的扩展和代码的复用。
[3]界面预览
Dromara 开源社区
一、社区愿景
让每一位开源爱好者,体会到开源的快乐。
二、社区官网
https://dromara.org 是 Dromara 开源社区官方网站。
三、成员项目

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
WoTerm v9.28.5 发布
v9.28.51.优化MacOSX系统下,隧道守护进程在Dock任务栏中的显示与隐藏。2.增加配置文件的保密能力,防止随意修改配置。3.丰富主菜单的各项功能入口,看起来逼格更专业。4.[SFTP]修复选项卡切换时,会导致上下载终止的缺陷。5.[SerialPort]增强串口输入模式、分割模式、输出模式,使其能处理更复杂的场景。6.[RLogin]优化帐号断开及自动登录的逻辑过程。 本次优化重点在于增强串口的功能,使其能处理更复杂的场景。 下载地址:http://woterm.com 开源地址:https://github.com/aoyiduo/woterm 或 https://gitee.com/aoyiduo/woterm
- 下一篇
🌱 Layui 2.8.13 发布
更新日志 table 优化 在自定义模板中放置 checkbox 时对应的文字显示异常问题 # I7LQNO 优化 totalRow 属性在 table.reloadData() 数据重载时的支持 # I7R6VY treeTable 修复 执行 treeTable.addNodes() 增加节点导致当前节点选中状态丢失的问题 # I7Q6IP 优化 增加和删除节点时,对容器尺寸重新进行自动适配 tree 优化 容器样式,以解决用于其他组件内部可能造成的样式异常问题 # I7QAO3 dropdown 调整 data.title 属性对 HTML 的转义处理。若不转义,可通过 templet 属性实现 # I7Q6IV util 重构 util.toDateString() 转换日期格式字符组件,以提供更强大的占位符支持 # 1314 修复 util.fixbar() 组件因 default 属性在 IE8 出现的保留字报错问题 相关导读 文档预览:https://layui.dev 仓库地址:https://gitee.com/layui/layui
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6