CQRS |事件来源|查看投影|并行性|因果一致性

时间:2019-04-17 20:03:20

标签: concurrency domain-driven-design projection cqrs event-sourcing

我们可以并行化视图的构造吗?可能基于事件的汇总ID。

让我们假设在DDD中有两个汇总,即Route&Trip(域:schoolbus管理系统)。如果视图很简单:

  • 在路由聚合上发生的事件将被投影到表“ Route”。路由表中的记录仅取决于路由聚合事件中包含的数据。
  • 在行程汇总中发生的事件将投影到表“行程”中。 Trip表中的记录仅取决于Trip聚合事件中包含的数据。
  • 一个(物化的)视图-我们称之为RouteTrip-将Route表和Trip表中的记录联接起来。

在那种情况下,也许我可以并行化视图构建器,也许通过事件的聚合ID。每个线程/进程将消耗同一聚合实例的事件。毕竟RouteTrip仅取决于加入的Route和Trip ...的最终状态,还是?我想这太严格了,仅适用于大多数琐碎的情况。

我觉得事件确实需要严格按顺序处理(即使在视图建筑物中也是如此)。真的吗?

有人在CQRS架构中设计视图功能方面有过经验吗?

可能相关:CQRS (event sourcing): Projections with multiple aggregates

0 个答案:

没有答案