事件采购重播事件和初始值

时间:2014-04-23 12:57:32

标签: events event-sourcing event-store

假设我有一个人们可以改变产品价格的产品目录。我实施了一个事件存储,以便能够重播所有“价格变化”事件,以便在它消失时获得最终价格。

重播活动时,我如何知道起始价?我的意思是,如果事件只包含“价格变为10美元”的信息,那么我必须先知道它是什么。 或者你总是把这些信息放在活动中?像这样“价格从9美元变为10美元”。

2 个答案:

答案 0 :(得分:0)

产品价格尚未改变时的价格是多少?

答案 1 :(得分:0)

您可以在事件数据中包含聚合的时间戳或版本号。回复时,你可以考虑这些价值观并提出一些问题。这个价格比我现有的价格更新吗?如果是这样更新别的什么都不做。这样你就可以获得最新和最旧的价格,即使你不知道过去的所有价格。只有当您的域名确定无误时。

将事件“价格从9 $更改为10 $”可以帮助您确定用户之间的比赛。这是一些额外的信息,可以帮助您回答未来的问题。

我有类似的情况,其中我的事件存储之外的东西在视图上创建聚合的第一个版本。我不得不创建一个特殊的进程来查看未聚合行的视图。并创建一个导入的事件,然后将其放在商店。