精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一篇帶你了解DDD四層微服務架構

開發 架構
DDD建模與落地的這幾年,收獲了不少好評,也著實為業務成功做出了貢獻,優化了大半年,如今終于可以跟大家正式見面了。

一、微服務搭建思路

大家看到的這張架構圖并不是空穴來潮,它是通過不斷演變出來的,我們要從DDD四層架構、微服務架構兩個維度去融合理解。

這里的DDD四層架構適用于單個服務的工程架構(如圖中的左下部分),就是單體應用的DDD四層架構的包劃分方式。

而微服務架構,則是從整體去看,整合多個單體應用,它們之間通過應用SDK工程進行RPC通訊。

二、微服務架構下的應用SDK

這個工程比較好理解,類似于我們傳統的理解的RPC包,或者叫API包,在Maven工程里,一般定義為一個子Module,里面主要定義的是Feign接口(如service.XxxFeignService),DTO對象(contract.dto.XxxRequest/XxxResponse)等等,此外還可以對FeignService返回的數據進行清洗與簡單通用的封裝(如util.XxxUtil),也就是說它還能封裝簡單的業務邏輯。

但需要特別注意:應用SDK要往一個大尺度獨立的聚合工程的方向去搭建,它里面的頂層包要按內部業務系統的維度去隔離,并且它和業務系統不是一對一的關系。

為什么要這樣設計?我講個例子你就明白了。

我們公司的業務系統在頂層劃分為SaaS應用和PaaS應用,那么PaaS應用對應的應用SDK可以命名為PaaSSdk,在PaaSSdk工程里,包括了消息中心、ChatAI、應用市場等PaaS應用的外部接口封裝與簡單業務邏輯封裝。

這樣做的好處顯而易見——SaaS應用需要用到PaaS應用的接口時,只需要引入PaaSSdk即可,原則上這個內部Sdk與我們平時引入的外部Jar包沒什么區別,可能只是網關和鑒權體系不一樣罷了。

而且,簡單的業務系統就用一個module就好了,沒必要再拆分多個module,要知道,每引入多一個東西就有更多的不確定性。

所以你也就能理解,為什么這里的應用Sdk與業務系統不是一對一的關系,如果是一對一,業務系統勢必要引入大量的Jar包,這在維護成本上是個災難。試想一下,如果要用到阿里云OSS的Jar包時,你會引入大量POM嗎?

三、DDD四層架構下的業務工程

DDD建模與落地的這幾年,收獲了不少好評,也著實為業務成功做出了貢獻,優化了大半年,如今終于可以跟大家正式見面了。

先談架構思想:

  • 經典DDD四層架構:作為主要骨架,其他優秀架構思想作指導
  • 整潔架構思想:應用到DDD領域層與基礎設施層,接口與實現拆到不同層,把技術代碼與業務代碼分離
  • 菱形架構思想:內部以領域層的領域模型為核心,向南北兩個方向發散
  • D3boot基礎框架:作為基礎設施,提供基礎CRUD接口、BOM依賴等基礎封裝,應用在各層,簡化鏈接,是快速搭建應用SDK、業務系統的粘合劑

DDD四層架構說明:

  • 接入層:對外提供的系統入口/接口,如放Controller類,并按端劃分(這里的client包寫移動端接口,admin包寫管理端接口,open包寫開放接口)
  • 應用層:跨聚合的服務編排service.XxxAppService、跨聚合領域事件監聽event.XxxListener,實體工廠factory.XxxFactory
  • 領域層:定義核心業務規則,與具體技術無關,不依賴其他各層;服務內按領域聚合劃分,外部聚合external.xxx按限界上下文(微服務)劃分;model定義充血模型、值對象,repository定義倉庫接口,service定義聚合內的領域服務,event定義聚合內的領域事件監聽器;領域契約contract包含:API層特殊出入參dto.XxxRequest/dto.XxxResponse、數據查詢參數param.XxxParam、領域事件event.XxxEvent
  • 基礎設施層:具體技術相關的代碼/框架、倉庫層實現repository.impl.XxxRepositoryImpl,包括數據聚合實現(fill方法);external放外部服務實現,做接口防腐

四、集成D3boot基礎框架

領導讓你搭個業務系統,如果什么都從零開始的話,項目周期就太長了。我們在搭建系統的過程中,如果有這么一個框架,能夠快速解決CRUD、工程結構劃分等等問題就好了。

D3boot基礎框架的出現,正是為了解決這個問題。一般SpringBoot只能集成Spring體系內的技術棧,但作為心態更開放的我們,不應把目光聚焦在Spring體系內,每家企業都應該有自己的基礎框架。

D3boot,意為DDD工程快速啟動,其中融入了DDD領域驅動的架構思想,并且能處處體現充血模型帶來的CRUD上的便利,還支持SaaS應用的搭建(租戶隔離)。D3boot框架旨在快速搭建SaaS業務系統,減少繁瑣的CRUD定義,減少不必要的xml代碼書寫。

充血模型的思想體現在對Model的繼承,即可實現你想要的CRUD;而通過領域工廠(Factory的build、convert、fill等方式),又可以利用貧血模型思想的優勢,對復雜的對象進行構建、轉換、填充,彌補了充血模型的不足。

目前我已使用這套輕量級微服務基礎框架,在公司里的健康管理平臺、消息中臺、工單中臺、社交中臺、ChatAI等業務系統應用了起來,使用感受一個字:舒服。

而作為基礎框架,考慮的更多是不同框架集成的問題、功能邊界問題,接下來我給大家一一介紹。

以下是D3boot的結構:

1.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工程需要依賴此包。

2.base-bom:基礎依賴組件

Maven的BOM(Bill of Materials)機制是Maven項目中的一個重要概念,它用于管理項目的依賴關系和版本控制。BOM機制可以幫助開發人員快速構建和維護項目,并且可以確保項目的穩定性和可靠性。

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

參考Spring的方式,我們把第三方的依賴統一在base-bom組件里進行管理,這樣一來,業務工程只需要引入對應的dependency即可(包括定義D3boot框架里的組件版本),不需要再在業務系統過多地指定用哪個版本,達到版本統一的效果。

3.base-contract-parent:業務Contract父工程組件

作為應用SDK工程的父POM,快速搭建應用SDK。

4.base-parent:業務父工程組件

作為業務工程的父POM,快速搭建業務系統。

5.ddd-demo:DDDDemo工程

基于D3boot框架搭建的DDD四層架構風格的業務工程,寫得比較粗糙,具體參考架構圖的實現為準。

五、寫在最后

我一直認為,基礎框架不能寫得太重,公司的公共組件不應放在基礎框架工程內實現,而是另外定制。在基礎框架的開發過程中,我不斷汲取前輩的優秀代碼經驗,并融入自己的代碼特色,提煉高復用性代碼,并對中間件進行淺封裝。

此外,本著技術開放的心態,這套基礎框架決定走開源路線,大家可以下載Deploy到自己的私倉使用,基于自己公司的業務進一步定制自己的基礎組件。

Gitee源碼地址:https://gitee.com/jensvn/d3boot(例行賒Star)

D3boot基礎框架具體的使用方式見源碼的README.md文件,這里不再贅述。

責任編輯:姜華 來源: 架構師修行錄
相關推薦

2023-11-24 07:16:10

DDD微服務

2022-02-22 08:15:59

微服務架構單體架構

2021-05-20 06:57:16

RabbitMQ開源消息

2023-02-20 09:55:00

微服務框架單體架構

2023-06-16 07:41:36

分層架構軟件架構

2021-06-30 00:20:12

Hangfire.NET平臺

2021-07-14 08:24:23

TCPIP 通信協議

2021-07-28 10:02:54

建造者模式代碼

2023-05-12 08:19:12

Netty程序框架

2021-08-11 07:02:21

npm包管理器工具

2021-11-08 08:42:44

CentOS Supervisor運維

2021-11-24 08:51:32

Node.js監聽函數

2021-08-02 06:34:55

Redis刪除策略開源

2021-12-15 11:52:34

GPLLinuxGNU

2023-01-05 07:52:36

高可用架構消息隊列

2021-02-02 18:39:05

JavaScript

2022-02-23 09:36:11

GoRuby編程語言

2021-01-29 18:41:16

JavaScript函數語法

2021-07-08 06:30:03

Linux CPULinux 系統

2022-02-17 08:35:59

OLTPOLAP數據倉庫
點贊
收藏

51CTO技術棧公眾號

a毛片毛片av永久免费| 国产成人亚洲综合无码| 无码视频一区二区三区| 欧美疯狂party性派对| 日韩欧美一卡二卡| 精品中文字幕av| 亚洲成a人v欧美综合天堂麻豆| 国模无码大尺度一区二区三区| 欧美高清在线观看| 自拍偷拍亚洲天堂| 日韩成人久久| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 久久久久久穴| 欧美激情2020午夜免费观看| 丰满少妇一区二区三区| 韩国一区二区三区视频| 91精品办公室少妇高潮对白| www成人免费| chinese偷拍一区二区三区| 懂色中文一区二区在线播放| 国产精品第七十二页| 欧美日韩中文视频| 天天综合久久| 亚洲色图50p| 一区二区三区四区影院| 亚洲免费看片| 色猫猫国产区一区二在线视频| 精品国产三级a∨在线| 九色在线免费| 不卡高清视频专区| 成人a视频在线观看| 精品不卡一区二区| 中国女人久久久| 久久999免费视频| 国产精品视频一区二区在线观看| 亚洲宅男网av| 亚洲精品一区二区在线观看| 中文字幕日韩久久| 欧美视频第一| 欧美图区在线视频| 日韩 欧美 高清| 日韩伦理精品| 精品久久久久久| 久久av高潮av| 色老头在线观看| 亚洲精品va在线观看| 日韩第一页在线观看| av影片在线看| 青青操在线视频| 精品72久久久久中文字幕| 欧美sm极限捆绑bd| 男插女视频网站| 亚州精品国产| 欧美丰满少妇xxxxx高潮对白| 午夜激情福利在线| 色豆豆成人网| 在线观看www91| 国产精彩免费视频| 日韩三区免费| 欧洲亚洲国产日韩| www.这里只有精品| 亚洲电影二区| 欧美三级电影精品| 奇米影视四色在线| 国产区一区二| 91精品国产黑色紧身裤美女| 中文 日韩 欧美| 无人区乱码一区二区三区| 91精品国产一区二区| 三日本三级少妇三级99| 亚洲一区二区三区中文字幕在线观看| 欧美成人一区二区三区在线观看| 四虎永久免费观看| 亚洲v天堂v手机在线| 亚洲欧美一区二区三区四区| 卡一卡二卡三在线观看| 久久精品国产大片免费观看| 久久色在线播放| 国产亚洲精久久久久久无码77777| 在线看片成人| 欧洲成人在线观看| 在线视频免费观看一区| 国产麻豆午夜三级精品| 国产69精品久久久久9999apgf | 精品一区二区三区香蕉蜜桃| av一区二区三区免费| 亚洲三级中文字幕| 国产精品区一区二区三| 波多野结衣 作品| 性欧美18xxxhd| 欧美日韩精品福利| 亚洲色图欧美日韩| 凹凸成人精品亚洲精品密奴| 久久中文字幕在线| 在线观看国产亚洲| 久久精品国产亚洲高清剧情介绍 | av一区二区在线播放| 大胆欧美人体视频| 影音先锋亚洲天堂| 美洲天堂一区二卡三卡四卡视频 | 日本999视频| 日韩中文字幕视频网| 亚洲欧美日韩一区二区在线| 欧美成人精品激情在线视频| 欧美一级二区| 91视频免费在线观看| 美女毛片在线看| 亚洲精品免费在线| 日日碰狠狠躁久久躁婷婷| 亚洲成人1区| 欧美三级美国一级| 欧美日韩午夜影院| 麻豆短视频在线观看| 夜夜春成人影院| 欧美xxxx18国产| 日韩精选在线观看| 成人福利视频网站| 自拍偷拍一区二区三区| 欧洲av不卡| 亚洲精品一区在线观看| 免费国产羞羞网站美图| 久久亚洲欧美| 国产一区二区黄色| 在线视频国产区| 欧美三级三级三级爽爽爽| 久久久午夜精品福利内容| 久久久久电影| 国产精品自产拍高潮在线观看| 手机看片福利在线| 亚洲精品成人在线| 中文字幕成人在线视频| 久久av导航| 欧美一级高清免费| 天堂中文资源在线观看| 一区二区理论电影在线观看| 999这里有精品| 色天天久久综合婷婷女18| 国产成人精品久久亚洲高清不卡| 免费的黄色av| 亚洲地区一二三色| 成人啪啪18免费游戏链接| 久久精品青草| 成人xxxxx| 精品孕妇一区二区三区| 欧美色综合久久| 无码少妇精品一区二区免费动态| 国产精品视频久久一区| 精品免费二区三区三区高中清不卡| 午夜成年人在线免费视频| 69av一区二区三区| 欧洲美女女同性互添| 极品尤物av久久免费看| 一区二区国产日产| 亚洲色图综合| 久久久黄色av| 99热这里只有精品在线| 亚洲乱码中文字幕综合| 在线观看av免费观看| 欧美成人精品| 国产高清一区视频| 爱草tv视频在线观看992| 亚洲精品suv精品一区二区| 日韩精品一区二区av| 99久久精品免费看国产免费软件| 精品丰满人妻无套内射| 欧美一区 二区| 奇米成人av国产一区二区三区| 全色精品综合影院| 欧美午夜精品免费| 我要看一级黄色录像| 国产精品一区二区三区四区| 国产一区二区三区乱码| 午夜a一级毛片亚洲欧洲| 国产精品99导航| 黄色一级片在线观看| 欧美大片拔萝卜| 一级黄色大片视频| 中文一区在线播放| 日本精品一区在线| 极品av少妇一区二区| 欧美高清性xxxxhd | 91麻豆桃色免费看| 俄罗斯一级**毛片在线播放| 日韩电影免费在线观看中文字幕| 日韩欧美国产另类| 亚洲免费观看在线视频| 亚洲熟女乱综合一区二区三区| 日韩一区欧美二区| 大片在线观看网站免费收看| 亚洲春色h网| 国产一区二区视频在线观看| 国内在线免费视频| 国产亚洲欧洲高清| 亚洲不卡免费视频| 欧美亚洲一区二区在线观看| 一区视频免费观看| 久久久久亚洲蜜桃| 激情小说欧美色图| 日韩电影免费在线看| 无码人妻精品一区二区蜜桃网站| 亲子伦视频一区二区三区| 国产一区二区丝袜| 在线日韩影院| 欧美黑人视频一区| av在线二区| 亚洲国产精品va| 97caocao| 色狠狠桃花综合| xxxx 国产| 亚洲欧洲av在线| 黄瓜视频污在线观看| 国产精品一卡二| 第四色婷婷基地| 久久久人人人| 色欲色香天天天综合网www| 天天超碰亚洲| 日韩偷拍一区二区| 欧美网色网址| 99re国产视频| 精品中文在线| 国产日韩欧美黄色| 亚洲综合av一区二区三区| 久久免费国产精品1| 国产不卡在线| 日韩一中文字幕| 精品av中文字幕在线毛片| 亚洲精品99久久久久| 亚洲福利在线观看视频| 制服丝袜中文字幕亚洲| 国产精品午夜一区二区| 色综合天天综合网天天看片| 亚洲国产精品午夜在线观看| 亚洲激情自拍视频| 精品人妻伦九区久久aaa片| 国产精品伦一区| 成人免费视频入口| 国产精品欧美一级免费| www.黄色在线| 国产欧美日韩综合| 国产成人一区二区在线观看| 在线视频精品免费| 亚洲黄色片在线观看| 日韩精品一区二区亚洲av性色 | 日韩欧美高清在线| 91福利免费视频| 欧美精品tushy高清| 中文字幕第31页| 欧美日韩亚洲另类| 一区二区三区午夜| 欧美精品粉嫩高潮一区二区| 一本色道久久综合亚洲| 欧美日韩国产首页| 一区二区三区精彩视频| 欧美美女bb生活片| 99久久亚洲精品日本无码| 欧美一区二区精品久久911| 99国产在线播放| 欧美成人a在线| 国产成人手机在线| 亚洲精品二三区| 欧美性孕妇孕交| 在线观看国产精品日韩av| av在线中文| 超碰精品一区二区三区乱码| 日韩三级电影视频| 午夜精品久久久久久久久久久久| 黄色在线观看www| 国产成人亚洲综合青青| 国产亚洲精品精品国产亚洲综合| 91精品国产自产在线观看永久| 精品视频一区二区三区| 国产一区二区三区色淫影院 | 影音先锋在线亚洲| 欧美va亚洲va日韩∨a综合色| 岛国大片在线播放| 久久精品人人| 小早川怜子一区二区三区| 国产成人av网站| 深爱五月激情网| 中文字幕色av一区二区三区| 国产一级做a爱免费视频| 日韩欧美在线免费| 97人妻一区二区精品免费视频| 精品国免费一区二区三区| 深夜福利在线观看直播| 这里只有精品久久| 日韩激情av| 国产精品电影久久久久电影网| 曰本一区二区| 看高清中日韩色视频| 欧美国产美女| 亚洲欧洲日产国码无码久久99 | 欧美丝袜一区二区三区| 在线观看日韩一区二区| 精品国产污污免费网站入口| 国产中文字幕在线观看| 欧美黑人极品猛少妇色xxxxx| 高清成人在线| 国产精品乱码视频| 三上亚洲一区二区| 91国视频在线| 国产精品亚洲一区二区三区妖精| 免费污网站在线观看| 亚洲蜜桃精久久久久久久| 亚洲成人av影片| 精品电影一区二区| 午夜伦全在线观看| 欧洲s码亚洲m码精品一区| 日韩在线成人| 亚洲一区二区三区免费看| 国产日韩1区| 欧美一级免费在线| 国产丝袜在线精品| 日本少妇毛茸茸高潮| 7799精品视频| av电影在线网| 日韩免费观看网站| 成人中文字幕视频| 亚洲区成人777777精品| 奇米在线7777在线精品 | 中文字幕在线不卡一区| 精品人妻无码一区二区性色| 亚洲成人久久网| 在线欧美三级| 91欧美精品午夜性色福利在线| 欧美a级网站| www.国产在线播放| 国产精品一区专区| 国产一二三区精品| 欧美精品99久久久**| 98在线视频| 国产精品精品视频| 国产探花一区二区| 免费毛片小视频| 99riav一区二区三区| 日本少妇激情视频| 亚洲高清久久网| av手机在线观看| 国产综合动作在线观看| 亚洲无毛电影| 国产大学生视频| 亚洲电影激情视频网站| 天天射天天操天天干| 欧美精品videosex极品1| 色播一区二区| 国产xxxx振车| 波多野洁衣一区| 97人人澡人人爽人人模亚洲| 亚洲国产欧美自拍| 黄色视屏在线免费观看| 久久久久久国产精品一区| 欧美亚洲一区| 天天摸日日摸狠狠添| 欧美日韩亚洲国产综合| 国产黄a三级三级三级av在线看| 91精品视频免费观看| 欧美黄色免费| 玖玖爱在线精品视频| 懂色av影视一区二区三区| 天天干天天草天天射| 日本电影亚洲天堂| 欧美日韩水蜜桃| 999久久久精品视频| 亚洲美女精品一区| 天天av天天翘| 国产精品高潮粉嫩av| 亚洲成人免费| 中文字幕人妻一区二区三区| 欧美日韩视频免费播放| 国产69久久| 亚洲www视频| 在线综合欧美| 日本在线观看网址| 精品免费日韩av| 成人免费短视频| 综合色婷婷一区二区亚洲欧美国产| 国产麻豆视频精品| 日韩免费一级片| 中文字幕亚洲一区| 日韩黄色av| 91猫先生在线| 日韩理论在线观看| 神马午夜电影一区二区三区在线观看 | 2019男人天堂| 日韩精品免费一区二区三区竹菊 | 亚洲女同志亚洲女同女播放| 136fldh精品导航福利| 成人免费在线观看av| 日韩高清一二三区| 日韩欧美亚洲成人| 黄色网址免费在线观看| 久久99久久精品国产| 久久se精品一区精品二区| 免费观看一级视频| 一区二区亚洲欧洲国产日韩| 伊人久久噜噜噜躁狠狠躁| 波多结衣在线观看| 亚洲成人动漫精品| 欧美天天影院| 久久一区二区精品|