【发布时间】:2012-01-05 13:58:57
【问题描述】:
我们遵循 CQRS 架构并使用 Jonathan Oliver 的事件存储版本 3 来处理事件。我们希望创建聚合根的快照以提高性能。
我找到了一个可用于此的 API (GetStreamsToSnapshot)。它根据创建快照之前的时间提供所有流。
但我不知道如何使用流来创建快照,因为我不知道聚合类型。
请提供有关如何创建快照的任何意见
【问题讨论】:
标签: cqrs neventstore
我们遵循 CQRS 架构并使用 Jonathan Oliver 的事件存储版本 3 来处理事件。我们希望创建聚合根的快照以提高性能。
我找到了一个可用于此的 API (GetStreamsToSnapshot)。它根据创建快照之前的时间提供所有流。
但我不知道如何使用流来创建快照,因为我不知道聚合类型。
请提供有关如何创建快照的任何意见
【问题讨论】:
标签: cqrs neventstore
正如您所发现的,GetStreamsToSnapshot 为您提供了一个流列表,这些流至少比 head 修订晚 X 修订。
从那里开始,加载每个流。在这里,您可以将某种标头信息附加到流中以确定您正在处理的聚合类型。
很多时候有人问我为什么不直接将聚合类型信息存储到 EventStore 中,并使其成为 API 的一流部分。答案是它不关心作为 DDD 概念的聚合。 EventStore 只关心流和事件。
【讨论】: