微服務架構 幾種常見模型的分析與比較

2021-10-12 10:20:55 字數 1150 閱讀 6113

整潔架構又名「洋蔥架構」。為什麼叫它洋蔥架構?看看下面這張圖你就明白了。整潔架構的層就像洋蔥片一樣,它體現了分層的設計思想。

整潔架構最主要的原則是依賴原則,它定義了各層的依賴關係,越往裡依賴越低,**級別越高,越是核心能力。外圓**依賴只能指向內圓,內圓不需要知道外圓的任何情況。

六邊形架構又名「埠介面卡架構」。追溯微服務架構的淵源,一般都會涉及到六邊形架構。

六邊形架構的核心理念是:應用是通過埠與外部進行互動的。我想這也是微服務架構下 api 閘道器盛行的主要原因吧。

這三種架構都考慮了前端需求的變與領域模型的不變。

ddd 分層架構、整潔架構、六邊形架構都是以領域模型為核心,實行分層架構,內部核心業務邏輯與外部應用、資源隔離並解耦。請務必記好這個設計思想,今後會有大用處。

專案級微服務的內部遵循分層架構模型就可以了。領域模型的核心邏輯在領域層實現,服務的組合和編排在應用層實現,通過 api 閘道器為前台應用提供服務,實現前後端分離。但專案級的微服務可能會呼叫其它微服務,你看在下面這張圖中,比如某個專案級微服務 b 呼叫認證微服務 a,完成登入和許可權認證。

我們可以在中颱微服務之上增加一層,你看下面這張圖,增加的這一層就位於紅色框內,它的主要職能就是處理跨中台微服務的服務組合和編排,以及微服務之間的協調,它還可以完成前端不同渠道應用的適配。如果再將它的業務範圍擴大一些,我可以將它做成乙個面向不同行業和渠道的服務平台。

bff 微服務與其它微服務存在較大的差異,就是它沒有領域模型,因此這個微服務內也不會有領域層。bff 微服務可以承擔應用層和使用者介面層的主要職能,完成各個中颱微服務的服務組合和編排,可以適配不同前端和渠道的要求。

微服務與微服務架構

微服務 微服務強調的是服務的大小,它關注的是某乙個點,是具體解決某乙個問題 提供落地對應服務的乙個服務應用,狹意的看,可以看作eclipse裡面的乙個個微服務工程 或者module。例如 訂單服務 支付服務 微服務架構 馬丁.福勒 martin fowler 微服務架構介紹 微服務架構是 種架構模式...

微服務 服務間常見的幾種呼叫方式

在平時開發中會用到很多種呼叫介面的方式,今天就來總結一下常用的幾種呼叫方式。微服務間可以通過服務名直接呼叫。以nacos的註冊中心為例 1.在pom.xml檔案中新增依賴 org.springframework.cloudgroupid spring cloud starter openfeigna...

微服務架構與SOA架構的區別與聯絡

如果我們開啟支付寶首頁,去看我們的餘額,它會展示你的總資產,昨日收益 累計收益等資訊。假如這個頁面所展示的資訊,都來自各個不同的系統 應用,我們通過各個介面把這些資料展示出來。如果我們現在要在前端頁面展示這幾項資料的話,我們應該怎麼去展示呢?在這種情況下,我們不可能讓客戶端與6個不同的應用 系統都一...