領域模型的雙時態設計Bi-temporal

banq發表於2019-08-23

事件溯源實際是按照時間線對領域中發生的事實進行跟蹤,其中挑戰是關於時間記錄問題,一個是事實發生的時間,也就是領域事件發生的時間,一個是記錄事實的時間。

雙時態(Bi-temporal):這一設計方法組合了實際時態和記錄時態這兩種變更跟蹤概念。

有效時間:真實世界變更的歷史時間。

交易時間:狀態和事件的發生順序。

這兩個時間是正交的,不是平行的,互為補充。交易時間對事務邏輯支援有好處。

這是否會導致複雜性?

但是儲存“有效日期”和“交易日期”並不意味著您同時需要它們。使這些時間軸正交可以使很多事情變得更容易。當然這取決於業務用例。

交易時間可能對Saga等事務支援比較有力。

 

相關文章