3
我明白CommitId
由Jonathan Oliver的活動商店內部使用。 到目前爲止,我總是爲CommitId
提供Guid.NewGuid()
。EventStore Commit Guid,它真的用於什麼?
你什麼時候想要做任何不同的事情?
我不明白爲什麼它暴露在他的公共領域知識庫。
任何人都可以對此有所瞭解嗎?
我明白CommitId
由Jonathan Oliver的活動商店內部使用。 到目前爲止,我總是爲CommitId
提供Guid.NewGuid()
。EventStore Commit Guid,它真的用於什麼?
你什麼時候想要做任何不同的事情?
我不明白爲什麼它暴露在他的公共領域知識庫。
任何人都可以對此有所瞭解嗎?
一般來說,CommonDomain不會試圖強制一個適合所有人的自以爲是的結構。
利用它的一種方式是讓作者使用其唯一的傳入命令ID作爲CommitId - 這意味着競爭(或重試與尚未超時的運行競爭)將被拒絕,並且不需要特定的異常進入/考慮/管理衝突解決邏輯。這是用來實現Idempotent命令的關鍵原則。
好問題;我可以回答它(以允許具有共享標識符的競爭作者(例如命令ID))更廉價地引起提交過程中的失敗快速冪等行爲。 –
謝謝魯本。對於那些想深入研究的人來說:http://docs.geteventstore.com/dotnet-api/3.6.0/optimistic-concurrency-and-idempotence/ –