EventStore Commit Guid, для чего он на самом деле используется?
Я понимаю CommitId
используется внутри магазина событий Джонатана Оливера. До сих пор я всегда давал Guid.NewGuid()
для CommitId
,
Когда бы вы все захотели сделать что-то другое?
Я не понимаю, почему это выставлено в его общем домене Repository.
Может кто-нибудь может пролить свет на это?
1 ответ
В общем, CommonDomain не пытается навязать универсальную структуру.
Один из способов использовать это - заставить писателей использовать свой уникальный входящий Command Id в качестве CommitId - это означает, что конкурирующие (или повторные попытки конкурируют с запусками, которые еще не истекли), будут отклонены с определенным исключением без необходимости входить в / рассматривать / управлять логикой разрешения конфликтов. Это используется для выполнения ключевого принципа идемпотентных команд.