《微服務架構設計模式》 學習總結06

2021-10-24 20:19:56 字數 845 閱讀 8992

本篇主要總結第六章:使用事件溯源開發業務邏輯

將類對映到資料庫表,將類的字段對映到資料表中的列,類的例項對映到資料表中的行。比較成熟的orm,像mybatis、jpa等。

缺乏聚合歷史

實施審計功能將非常煩瑣且容易出錯事件發布凌駕於業務邏輯之上

事件溯源將每個聚合作為一系列事件來持久化儲存,每個事件代表聚合狀態的一次改變。
建立聚合的步驟:

使用聚合的預設建構函式例項化聚合根

呼叫process()以生成新事件

將新事件儲存在事件儲存庫中。

更新聚合的步驟:

從事件儲存庫中載入聚合事件

使用基預設建構函式例項化聚合根

呼叫其process()方法以生成新事件

將新事件儲存在事件儲存庫中。

實施事件溯源還需要注意:

事件溯源的好處

事件溯源的弊端

事件溯源是乙個業務邏輯設計的新穎模式。區別於傳統的業務邏輯儲存」結果「,把物件的最新狀態通過orm或者直接資料庫操作儲存在資料庫中。事件溯源的理念是儲存」過程「,把物件每次狀態變化都以事件記錄的形式存放在資料庫中。

我理解事件溯源最直接的兩個好處:

而要真正實現事件溯源要做的準備不少:

因此,我覺得事件溯源更適合於對歷史事件要求非常苛刻的專案,一般的業務需求中,只需要在物件的幾個關鍵節點上記錄事件即可。微

event stream processing, streaming data, and cep explained

《微服務架構設計模式》 學習總結03

本篇主要總結第三章 微服務架構中的程序間通訊。在不討論訊息具體實現的情況下,作者從不同維度先對程序間通訊的互動方式進行了分類和歸納。客戶端與服務的互動方式 維度二 2.api的變更 微服務架構中,api一旦確定就下來,在更新api時必須確保舊新版本api的相容性。因此,引入api版本控制 語義化版本...

微服務架構設計模式綜述

隨著微服務的大量應用,在實踐中也會遇到很多之前單體架構所沒有的問題,微服務架構設計模式也應運而生。架構方面的權威chris richardson先生從多個角度歸納了42個設計模式,我將其歸納整理如下表,以饗讀者。後面會陸續出關於微服務架構設計模式的文章,更加深入的闡述richardson先生關於微服...

微服務軟體架構設計

在軟體內部經過綜合各種因素考量 權衡,選擇特定的技術,將系統劃分為不同的部分並使用這些部分相互分工,彼此協作,為使用者提供需要的價值 軟體架構進化考慮的因素 傳統架構 單體架構 概念優勢 挑戰微服務架構 定義使用一套小服務來開發單個應用的方式,每個服務執行在單獨的程序,一般採用輕量級的通訊機制互聯,...