思考一種好的架構(九)

2022-02-07 00:40:53 字數 536 閱讀 2799

中介者(mediator)

為了解除服務間互相引用的問題,單獨劃分出來的乙個服務

它的好處時顯而易見的,服務之間的引用將會變的清晰明了

我只在業務服務庫上使用它,普通服務和基礎設施服務還是自己管自己的,

沒有使用mediatr 因為我覺得它對於net core提供的中介者功能並不是很好的用,微軟自帶的ioc就已經很好用了

我們通過在mediator服務庫下建立乙個資料夾公開服務(publicserver),然後按業務服務庫名稱去命名資料夾,下面放著業務服務庫公開的介面和傳輸物件

這樣一來,不僅解決相互依賴的問題,還能形成乙個公開服務目錄,方便呼叫者查詢和使用,只是在寫入**時候麻煩了點,需要先構建乙個業務服務庫,在mediator服務中新增介面和公開服務,並在web新增配置**

思考一種好的架構(十二)

程式集掃瞄庫 referencescan 是什麼?服務間會有各種相互依賴和引用,這勢必會造成爭奪configureservices,到最後牽一髮而動全身。於是很自然的出現了它來解決這個問題,為什麼?為了解決服務爭奪configureservices註冊順序而誕生的庫,他就是各個服務的帶頭人,一定是它...

思考一種好的架構(十二)

事件溯源 tracingsource 資料庫事件溯源實體 table name tracingsource public class tracingsourceentity 執行時間 public datetime executetimer 執行sql public string executesq...

思考一種好的架構(二)

業務服務庫最小工作單元 這種架構適用於aspnetcore 我所使用的版本是2.2 非常舒服的地方就是startup.cs 可以在configureservices註冊服務 在configure實現中介軟體做aop程式設計,用起來不要太爽 由於net的控制器發現機制 參考 也就是每個業務服務都能擁有...