中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

南寧中小企業(yè)網(wǎng)站制作許昌seo公司

南寧中小企業(yè)網(wǎng)站制作,許昌seo公司,青海建設(shè)云網(wǎng)站,做網(wǎng)站怎么投放廣告目錄 1、概述 2、整潔架構(gòu) 3、六邊形架構(gòu) 4、三種微服務(wù)架構(gòu)模型的對(duì)比和分析 5、從三種架構(gòu)模型看中臺(tái)和微服務(wù)設(shè)計(jì) 5.1 中臺(tái)建設(shè)要聚焦領(lǐng)域模型 5.2 微服務(wù)要有合理的架構(gòu)分層 5.2.1 項(xiàng)目級(jí)微服務(wù) 5.2.2 企業(yè)級(jí)中臺(tái)微服務(wù) 5.3 應(yīng)用和資源的解耦與適配 6、總結(jié) 1、概…

目錄

1、概述

2、整潔架構(gòu)

3、六邊形架構(gòu)

4、三種微服務(wù)架構(gòu)模型的對(duì)比和分析

5、從三種架構(gòu)模型看中臺(tái)和微服務(wù)設(shè)計(jì)

5.1 中臺(tái)建設(shè)要聚焦領(lǐng)域模型

5.2 微服務(wù)要有合理的架構(gòu)分層

5.2.1 項(xiàng)目級(jí)微服務(wù)

5.2.2 企業(yè)級(jí)中臺(tái)微服務(wù)

5.3 應(yīng)用和資源的解耦與適配

6、總結(jié)


1、概述

DDD分層架構(gòu)、整潔架構(gòu)、六邊形架構(gòu)這三種架構(gòu)模型放到一起,對(duì)比分析,看看如何利用好它

們,幫助我們?cè)O(shè)計(jì)出高內(nèi)聚低耦合的中臺(tái)以及微服務(wù)架構(gòu)。

2、整潔架構(gòu)

整潔架構(gòu)又名“洋蔥架構(gòu)”。整潔架構(gòu)的層就像洋蔥片一樣,它體現(xiàn)了分層的設(shè)計(jì)思想。

在整潔架構(gòu)里,同心圓代表應(yīng)用軟件的不同部分,從里到外依次是領(lǐng)域模型、領(lǐng)域服務(wù)、應(yīng)用服務(wù)

和最外圍的容易變化的內(nèi)容,比如用戶(hù)界面和基礎(chǔ)設(shè)施。

整潔架構(gòu)最主要的原則是依賴(lài)原則,它定義了各層的依賴(lài)關(guān)系,越往里依賴(lài)越低,代碼級(jí)別越高,

越是核心能力。

外圓代碼依賴(lài)只能指向內(nèi)圓,內(nèi)圓不需要知道外圓的任何情況。

領(lǐng)域模型實(shí)現(xiàn)領(lǐng)域內(nèi)核心業(yè)務(wù)邏輯,它封裝了企業(yè)級(jí)的業(yè)務(wù)規(guī)則。領(lǐng)域模型的主體是實(shí)體,一個(gè)實(shí)

體可以是一個(gè)帶方法的對(duì)象,也可以是一個(gè)數(shù)據(jù)結(jié)構(gòu)和方法集合。

應(yīng)用服務(wù)實(shí)現(xiàn)與用戶(hù)操作相關(guān)的服務(wù)組合與編排,它包含了應(yīng)用特有的業(yè)務(wù)流程規(guī)則,封裝和實(shí)現(xiàn)

了系統(tǒng)所有用例。

最外層主要提供適配的能力,適配能力分為主動(dòng)適配和被動(dòng)適配。主動(dòng)適配主要實(shí)現(xiàn)外部用戶(hù)、網(wǎng)

頁(yè)、批處理和自動(dòng)化測(cè)試等對(duì)內(nèi)層業(yè)務(wù)邏輯訪問(wèn)適配。被動(dòng)適配主要是實(shí)現(xiàn)核心業(yè)務(wù)邏輯對(duì)基礎(chǔ)資

源訪問(wèn)的適配,比如數(shù)據(jù)庫(kù)、緩存、文件系統(tǒng)和消息中間件等。

紅圈內(nèi)的領(lǐng)域模型、領(lǐng)域服務(wù)和應(yīng)用服務(wù),一起組成軟件核心業(yè)務(wù)能力。

3、六邊形架構(gòu)

六邊形架構(gòu)又名“端口適配器架構(gòu)”。

六邊形架構(gòu)的核心理念是:應(yīng)用是通過(guò)端口與外部進(jìn)行交互的。這也是微服務(wù)架構(gòu)下API網(wǎng)關(guān)盛行

的主要原因吧。

也就是說(shuō),在下圖的六邊形架構(gòu)中,紅圈內(nèi)的核心業(yè)務(wù)邏輯(應(yīng)用程序和領(lǐng)域模型)與外部資源

(包括 APP、Web 應(yīng)用以及數(shù)據(jù)庫(kù)資源等)完全隔離,僅通過(guò)適配器進(jìn)行交互它解決了業(yè)務(wù)邏

輯與用戶(hù)界面的代碼交錯(cuò)問(wèn)題,很好地實(shí)現(xiàn)了前后端分離。六邊形架構(gòu)各層的依賴(lài)關(guān)系與整潔架構(gòu)

一樣,都是由外向內(nèi)依賴(lài)。

六邊形架構(gòu)將系統(tǒng)分為內(nèi)六邊形和外六邊形兩層,這兩層的職能劃分如下:

紅圈內(nèi)的六邊形,實(shí)現(xiàn)應(yīng)用的核心業(yè)務(wù)邏輯

外六邊形完成外部應(yīng)用、驅(qū)動(dòng)和基礎(chǔ)資源等的交互和訪問(wèn),對(duì)前端應(yīng)用以API主動(dòng)適配的方式提供

服務(wù),對(duì)基礎(chǔ)資源以依賴(lài)倒置被動(dòng)適配的方式實(shí)現(xiàn)資源訪問(wèn)。

六邊形架構(gòu)的一個(gè)端口可能對(duì)應(yīng)多個(gè)外部系統(tǒng),不同的外部系統(tǒng)也可能會(huì)使用不同的適配器,由適

配器負(fù)責(zé)協(xié)議轉(zhuǎn)換。這就使得應(yīng)用程序能夠以一致的方式被用戶(hù)、程序、自動(dòng)化測(cè)試和批處理腳本

使用。

4、三種微服務(wù)架構(gòu)模型的對(duì)比和分析

這三種架構(gòu)模型的設(shè)計(jì)思想正是微服務(wù)架構(gòu)高內(nèi)聚低耦合原則的完美體現(xiàn),而它們身上閃耀的正是

領(lǐng)域模型為中心的設(shè)計(jì)思想。

按照這種功能的差異,我們?cè)谶@三種架構(gòu)中劃分了應(yīng)用層和領(lǐng)域?qū)?/strong>,來(lái)承擔(dān)不同的業(yè)務(wù)邏輯。

領(lǐng)域?qū)訉?shí)現(xiàn)面向領(lǐng)域模型,實(shí)現(xiàn)領(lǐng)域模型的核心業(yè)務(wù)邏輯,屬于原子模型,它需要保持領(lǐng)域模型和

業(yè)務(wù)邏輯的穩(wěn)定,對(duì)外提供穩(wěn)定的細(xì)粒度的領(lǐng)域服務(wù),所以它處于架構(gòu)的核心位置。

應(yīng)用層實(shí)現(xiàn)面向用戶(hù)操作相關(guān)的用例和流程,對(duì)外提供粗粒度的API服務(wù)。

可以說(shuō),這三種架構(gòu)都考慮了前端需求的變與領(lǐng)域模型的不變。

總體來(lái)說(shuō),不管前端如何變化,在企業(yè)沒(méi)有大的變革的情況下,核心領(lǐng)域邏輯基本不會(huì)大變,所以

領(lǐng)域模型相對(duì)穩(wěn)定,而用例和流程則會(huì)隨著外部應(yīng)用需求而隨時(shí)調(diào)整。把握好這個(gè)規(guī)律,我們就知

道該如何設(shè)計(jì)應(yīng)用層和領(lǐng)域?qū)恿恕?/p>

架構(gòu)模型通過(guò)分層的方式來(lái)控制需求變化從外到里對(duì)系統(tǒng)的影響,從外向里受需求影響逐步減小。

這樣設(shè)計(jì)的好處很明顯了,就是可以保證領(lǐng)域?qū)拥暮诵臉I(yè)務(wù)邏輯不會(huì)因?yàn)橥獠啃枨蠛土鞒痰淖儎?dòng)而

調(diào)整,對(duì)于建立前臺(tái)靈活、中臺(tái)穩(wěn)固的架構(gòu)很有幫助。

中臺(tái)和微服務(wù)設(shè)計(jì)的關(guān)鍵:領(lǐng)域模型和微服務(wù)的合理分層設(shè)計(jì)。

5、從三種架構(gòu)模型看中臺(tái)和微服務(wù)設(shè)計(jì)

中臺(tái)本質(zhì)上是領(lǐng)域的子域,它可能是核心域,也可能是通用域或支撐域。通常大家認(rèn)為阿里的中臺(tái)

對(duì)應(yīng)DDD的通用域,將通用的公共能力沉淀為中臺(tái),對(duì)外提供通用共享服務(wù)。

中臺(tái)作為子域還可以繼續(xù)分解為子子域,在子域分解到合適大小,通過(guò)事件風(fēng)暴劃分限界上下文以

后,就可以定義微服務(wù)了,微服務(wù)用來(lái)實(shí)現(xiàn)中臺(tái)的能力。表面上看,DDD、中臺(tái)、微服務(wù)這三者

之間似乎沒(méi)什么關(guān)聯(lián),實(shí)際上它們的關(guān)系是非常緊密的,組合在一起可以作為一個(gè)理論體系用于你

的中臺(tái)和微服務(wù)設(shè)計(jì)

5.1 中臺(tái)建設(shè)要聚焦領(lǐng)域模型

中臺(tái)需要站在全企業(yè)的高度,考慮能力的共享和復(fù)用。

中臺(tái)設(shè)計(jì)時(shí),我們需要建立中臺(tái)內(nèi)所有限界上下文的領(lǐng)域模型,DDD 建模過(guò)程中會(huì)考慮架構(gòu)演進(jìn)

和功能的重新組合。領(lǐng)域模型建立的過(guò)程會(huì)對(duì)業(yè)務(wù)和應(yīng)用進(jìn)行清晰的邏輯和物理邊界(微服務(wù))劃

分。領(lǐng)域模型的結(jié)果會(huì)影響到后續(xù)的系統(tǒng)模型、架構(gòu)模型和代碼模型,最終影響到微服務(wù)的拆分和

項(xiàng)目落地。

因此,在中臺(tái)設(shè)計(jì)中我們首先要聚焦領(lǐng)域模型,將它放在核心位置。

5.2 微服務(wù)要有合理的架構(gòu)分層

微服務(wù)設(shè)計(jì)要有分層的設(shè)計(jì)思想,讓各層各司其職,建立松耦合的層間關(guān)系。

不要把與領(lǐng)域無(wú)關(guān)的邏輯放在領(lǐng)域?qū)訉?shí)現(xiàn),保證領(lǐng)域?qū)拥募儩嵑皖I(lǐng)域邏輯的穩(wěn)定,避免污染領(lǐng)域模

型。也不要把領(lǐng)域模型的業(yè)務(wù)邏輯放在應(yīng)用層,這樣會(huì)導(dǎo)致應(yīng)用層過(guò)于龐大,最終領(lǐng)域模型會(huì)失

焦。如果實(shí)在無(wú)法避免,我們可以

引入防腐層,進(jìn)行新老系統(tǒng)的適配和轉(zhuǎn)換,過(guò)渡期完成后,可以直接將防腐層代碼拋棄。

有的微服務(wù)可以與前端應(yīng)用集成,一起完成特定的業(yè)務(wù),這是項(xiàng)目級(jí)微服務(wù)。而有的則是某個(gè)職責(zé)

單一的中臺(tái)微服務(wù),企業(yè)級(jí)的業(yè)務(wù)流程需要將多個(gè)這樣的微服務(wù)組合起來(lái)才能完成,這是企業(yè)級(jí)中

臺(tái)微服務(wù)。兩類(lèi)微服務(wù)由于復(fù)雜度不一樣,集成方式也會(huì)有差異。

5.2.1 項(xiàng)目級(jí)微服務(wù)

項(xiàng)目級(jí)微服務(wù)的內(nèi)部,遵循分層架構(gòu)模型就可以了。

領(lǐng)域模型的核心邏輯在領(lǐng)域?qū)訉?shí)現(xiàn),服務(wù)的組合和編排在應(yīng)用層實(shí)現(xiàn),通過(guò)API網(wǎng)關(guān)為前臺(tái)應(yīng)用提

供服務(wù),實(shí)現(xiàn)前后端分離。但項(xiàng)目級(jí)的微服務(wù),可能會(huì)調(diào)用其它微服務(wù)。通常項(xiàng)目級(jí)微服務(wù)之間的

集成,發(fā)生在微服務(wù)的應(yīng)用層,由應(yīng)用服務(wù)調(diào)用其它微服務(wù)發(fā)布在API網(wǎng)關(guān)上的應(yīng)用服務(wù)。

它除了可以組合和編排自己的領(lǐng)域服務(wù)外,還可以組合和編排外部微服務(wù)的應(yīng)用服務(wù)。它只要將編

排后的服務(wù)發(fā)布到API網(wǎng)關(guān)供前端調(diào)用,這樣前端就可以直接訪問(wèn)自己的微服務(wù)了。

5.2.2 企業(yè)級(jí)中臺(tái)微服務(wù)

企業(yè)級(jí)的業(yè)務(wù)流程,往往是多個(gè)中臺(tái)微服務(wù)一起協(xié)作完成的。

企業(yè)級(jí)中臺(tái)微服務(wù)的集成不能像項(xiàng)目級(jí)微服務(wù)一樣,在某一個(gè)微服務(wù)內(nèi)完成跨微服務(wù)的服務(wù)組合和

編排。

我們可以在中臺(tái)微服務(wù)之上增加一層,增加的這一層它的主要職能就是處理跨中臺(tái)微服務(wù)的服務(wù)組

合和編排,以及微服務(wù)之間的協(xié)調(diào),它還可以完成前端不同渠道應(yīng)用的適配。如果再將它的業(yè)務(wù)范

圍擴(kuò)大一些,我可以將它做成一個(gè)面向不同行業(yè)和渠道的服務(wù)平臺(tái)。

我們借用BFF(服務(wù)于前端的后端,Backend for Frontends)這個(gè)詞,暫且稱(chēng)它為BFF 微服務(wù)。

BFF微服務(wù)與其它微服務(wù)存在較大的差異,就是它沒(méi)有領(lǐng)域模型,因此這個(gè)微服務(wù)內(nèi)也不會(huì)有領(lǐng)域

。BFF微服務(wù)可以承擔(dān)應(yīng)用層和用戶(hù)接口層的主要職能,完成各個(gè)中臺(tái)微服務(wù)的服務(wù)組合和編

排,可以適配不同前端和渠道的要求。

5.3 應(yīng)用和資源的解耦與適配

傳統(tǒng)以數(shù)據(jù)為中心的設(shè)計(jì)模式,應(yīng)用會(huì)對(duì)數(shù)據(jù)庫(kù)、緩存、文件系統(tǒng)等基礎(chǔ)資源產(chǎn)生嚴(yán)重依賴(lài)。

正是由于它們之間的這種強(qiáng)依賴(lài)的關(guān)系,我們一旦更換基礎(chǔ)資源就會(huì)對(duì)應(yīng)用產(chǎn)生很大的影響,因此

需要為應(yīng)用和資源解耦。

在微服務(wù)架構(gòu)中,應(yīng)用層、領(lǐng)域?qū)雍突A(chǔ)層解耦是通過(guò)倉(cāng)儲(chǔ)模式,采用依賴(lài)倒置的設(shè)計(jì)方法來(lái)實(shí)現(xiàn)

的。在應(yīng)用設(shè)計(jì)中,我們會(huì)同步考慮和基礎(chǔ)資源的代碼適配,那么一旦基礎(chǔ)設(shè)施資源出現(xiàn)變更(比

如換數(shù)據(jù)庫(kù)),就可以屏蔽資源變更對(duì)業(yè)務(wù)代碼的影響,切斷業(yè)務(wù)邏輯對(duì)基礎(chǔ)資源的依賴(lài),最終降

低資源變更對(duì)應(yīng)用的影響。

6、總結(jié)

DDD分層架構(gòu)、整潔架構(gòu)、六邊形架構(gòu)都是以領(lǐng)域模型為核心,實(shí)行分層架構(gòu),內(nèi)部核心業(yè)務(wù)邏

輯與外部應(yīng)用、資源隔離并解耦。請(qǐng)務(wù)必記好這個(gè)設(shè)計(jì)思想,今后會(huì)有大用處。

http://www.risenshineclean.com/news/28663.html

相關(guān)文章:

  • 管理網(wǎng)站開(kāi)發(fā)教程semseo是什么意思
  • 百度網(wǎng)頁(yè)版在線(xiàn)使用網(wǎng)站整站優(yōu)化公司
  • 淘寶客怎么建網(wǎng)站網(wǎng)站后臺(tái)管理系統(tǒng)
  • 廣西城鄉(xiāng)和住房建設(shè)廳網(wǎng)站黃頁(yè)推廣
  • 網(wǎng)站主機(jī)和空間360搜索引擎地址
  • 洛陽(yáng)網(wǎng)站建設(shè)首選洛陽(yáng)銘信科技佛山seo按效果付費(fèi)
  • 用帝國(guó)cms做網(wǎng)站2022年新聞?wù)畻l
  • 加工鋼球網(wǎng)架公司西安seo教程
  • wordpress站點(diǎn)logo設(shè)置河北疫情最新情況
  • 建設(shè)門(mén)戶(hù)網(wǎng)站的申請(qǐng)網(wǎng)站推廣是做什么的
  • 直播教育網(wǎng)站建設(shè)注冊(cè)網(wǎng)站平臺(tái)要多少錢(qián)
  • 什么網(wǎng)站可以做投票愛(ài)站查詢(xún)工具
  • 付費(fèi)推廣網(wǎng)站網(wǎng)絡(luò)營(yíng)銷(xiāo)論文題目
  • 建設(shè)銀行曲江支行網(wǎng)站優(yōu)化分析
  • 沒(méi)備案的網(wǎng)站怎么做淘客做百度推廣員賺錢(qián)嗎
  • 服裝網(wǎng)站建設(shè)進(jìn)度及實(shí)施過(guò)程百度營(yíng)銷(xiāo)app
  • 怎么做網(wǎng)站管理系統(tǒng)寧波網(wǎng)站推廣方案
  • 撫州做網(wǎng)站的公司網(wǎng)站推廣系統(tǒng)方案
  • 寶安網(wǎng)站制作網(wǎng)站建設(shè)太原網(wǎng)站制作優(yōu)化seo公司
  • 怎么在網(wǎng)站上做簽到建設(shè)網(wǎng)站制作公司
  • 河南建設(shè)教育中心網(wǎng)站免費(fèi)域名空間申請(qǐng)網(wǎng)址
  • 個(gè)人網(wǎng)站實(shí)例深圳優(yōu)化公司義高粱seo
  • 杭州做網(wǎng)站公司怎么制作網(wǎng)頁(yè)鏈接
  • 怎么搭建網(wǎng)站后臺(tái)怎么找到精準(zhǔn)客戶(hù)資源
  • 建設(shè)網(wǎng)站服務(wù)器 知乎網(wǎng)站自助搭建
  • 做參考資料的網(wǎng)站seo 優(yōu)化一般包括哪些內(nèi)容
  • 公司網(wǎng)站優(yōu)化推廣方案青島模板建站
  • 做的網(wǎng)站百度上可以搜到嗎百度seo課程
  • 個(gè)人怎么做動(dòng)漫短視頻網(wǎng)站怎么制作網(wǎng)頁(yè)
  • wordpress域名 文件夾seo推廣哪家公司好