> 自媒体 > (AI)人工智能 > DDD四层微服务架构及D3boot基础框架首发
DDD四层微服务架构及D3boot基础框架首发
来源:架构师修行录
2025-02-04 17:16:33
561
管理

大家好,我是Jensen。一个想和大家一起打怪升级的程序员朋友。

许久未提笔,这段时间,笔者除了奔忙于公司的一大堆项目交付,还在写业务代码的过程中,沉淀出了一套DDD风格的微服务基础框架。

作为一位虽然时不时就断更的技术自媒体,光打嘴炮是不够的,总要产出点什么,所以断更并不是我本意,再次向大家致歉,争取个宽大处理。

我错了,下次还敢。

《赶紧进入正题吧》

微服务搭建思路

一、base:基础组件

可扩展的基础组件,下面包括多个子模块,包括:

base-core:基础核心组件

定义了基础核心上下文(如SpringContext、ThreadContext、BaseContext)、核心契约(如R对象、Page对象、抽象领域事件、业务异常、统一状态码等)、核心工具类(如Bean转换工具、Json转换工具、业务断言工具等)。

base-data:基础数据组件

定义了基础模型(支持CRUD的充血模型)、基础仓库及MybatisPlus的仓库实现、数据类型处理器等,支持通过@TenantId注解PO类租户字段来隔离租户数据等。用到数据库的工程需要依赖此包。

base-MQ:基础MQ组件

目前集成了Kafka消息队列,可快速通过注解方式实现MQ消费。

base-kit:基础工具箱

工具类,底下按不同的能力又细分为缓存类、事件类、语言类、线程类、WEB类工具。

base-monitor:基础监控组件

集成HealthCheck接口、启动打印代码版本功能、日志告警功能(能把log.error的日志告警到企微机器人/钉钉机器人)。

base-web:基础WEB组件

定义了CRUD控制器基类CRUDController、按端划分的模型控制器接口ModelController、全局异常增强、全局R对象包装、全局Feign异常降级、各类WEB拦截器、基础接口认证功能等。WEB工程需要依赖此包。

二、base-bom:基础依赖组件

Maven的BOM(Bill of Materials)机制是Maven项目中的一个重要概念,它用于管理项目的依赖关系和版本控制。BOM机制可以帮助开发人员快速构建和维护项目,并且可以确保项目的稳定性和可靠性。

Spring有自己的bom文件,如spring-boot-dependencies,里面定义了构建SpringBoot工程所需要的依赖。

参考Spring的方式,我们把第三方的依赖统一在base-bom组件里进行管理,这样一来,业务工程只需要引入对应的dependency即可(包括定义D3boot框架里的版本),不需要再指定用哪个版本,达到版本统一的效果。

三、base-contract-parent:业务Contract父工程组件

作为应用SDK工程的父POM,快速搭建应用SDK。

四、base-parent:业务父工程组件

作为业务工程的父POM,快速搭建业务系统。

五、ddd-demo:DDDDemo工程

基于D3boot框架搭建的DDD四层架构风格的业务工程,写得比较粗糙,具体参考架构图的实现为准。

基础框架具体的使用方式见源码的README.md文件。

我一直认为,基础框架不能写得太重,公司的公共组件不应放在基础框架工程内实现,而是另外定制。在基础框架的开发过程中,我不断汲取前辈的优秀代码经验,并融入自己的代码特色,提炼高复用性代码,并对中间件进行浅封装。

此外,本着技术开放的心态,这套基础框架决定走开源路线,大家可以下载Deploy到自己的私仓使用,基于自己公司的业务进一步定制自己的基础组件。

Gitee源码地址:D3Boot基础框架: 快速搭建DDD应用(例行赊Star)

最后,非常感谢大家能够看到这里,有任何技术上的问题,可以向我的AI助理豆包咨询,当然也可以私V我:Jensvn,获得框架使用上的支持,也欢迎大家给这个框架提出宝贵的优化建议。

本文作者:Jensen

九年Java老兵,曾涉猎航空、电信、IoT、垂直电商、直播互动游戏、SaaS PaaS产品研发,现任某老牌SaaS厂商解决方案架构师。

小米主题设计师、手机输入法设计师、双键五笔创始人、ProcessOn特邀讲师。

技术公众号【架构师修行录】号主,专注于分享程序员日常/架构技术/职场干货,关注回复“职场”马上升职加薪。

0
点赞
赏礼
赏钱
0
收藏
免责声明:本文仅代表作者个人观点,与本站无关。其原创性以及文中陈述文字和内容未经本网证实,对本文以及其中全部或者 部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 凡本网注明 “来源:XXX(非本站)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对 其真实性负责。 如因作品内容、版权和其它问题需要同本网联系的,请在一周内进行,以便我们及时处理。 QQ:617470285 邮箱:617470285@qq.com
相关文章
月供一千多开走丰田SUV?威兰达AIR版这次把“家用”玩明白了..
#威兰达AIR权益价13.78万#月供一千多开走丰田SUV?威兰达AIR版这次把“家..
全新丰田威兰达AIR上市,定价13.78万起,现在入手划算吗?..
#威兰达AIR权益价13.78万#2月24日,广汽丰田全新威兰达AIR版上市,有2.0L..
价格再下探,权益价13.78万元起,全新丰田威兰达AIR版上市..
不过,与Pro版车型相比,AIR版车型少了高通8155座舱芯片、副驾座椅电动调..
2026款丰田雅力士发布:升级10.5英寸大屏,保留燃油手动挡..
【网通社快报】丰田近日在日本发布2026款雅力士及雅力士Cross,新车将于3..
26款丰田亚洲龙亮相,车道保持+自动刹车+4.9L油耗,B级车天花板..
2019年亚洲龙刚进入中国市场时,许多消费者对这辆车的定位感到困惑,它的..
丰田陆放到底值不值得买?跑了5000公里,车主只说了大实话..
大家好,我是宇哥。最近很多粉丝问我:预算30万左右,想买一台靠谱的7座..
搭载新一代插混技术,丰田RAV4 PHEV海外发布,售价26.7万..
2026年2月19日,丰田在日本市场正式发布了全新第六代RAV4的PHEV版本,并..
丰田普拉多最高优惠5万,实力依然扛打!现在是不是下手好时机?..
前两天,咱们去逛二手车市场,依然见到不少丰田普拉多、丰田兰德酷路泽的..
丰田为何没有变成另一个诺基亚?
五年前小鹏汽车创始人何小鹏嘲笑丰田章男对待EV(电动汽车)的态度,并在..
关于作者
御赐铲屎官..(普通会员)
文章
1857
关注
0
粉丝
0
点击领取今天的签到奖励!
签到排行

成员 网址收录40418 企业收录2986 印章生成263660 电子证书1157 电子名片68 自媒体103982

0
0
分享
请选择要切换的马甲:

个人中心

每日签到

我的消息

内容搜索