【发布时间】:2021-02-02 06:32:55
【问题描述】:
在事件源系统中,我很好奇人们在引入额外事件或扩展事件时的想法,只是为了降低投影逻辑的复杂性。我必须管理它感觉有点不对劲。
简单示例:
OrderPlaced(orderId, orderLines) where OrderLine(lineId, productId, price)
OrderAccepted(orderId)
如果我想要一个预测来总结每种产品的所有价格 - 但仅限于已接受的订单。因此,如果我选择扩展(或引入新)事件的方法,例如,我需要扩展 OrderAccepted 以便它添加订单行。如果我选择不扩展 OrderAccepted,则投影需要保留特定产品的所有已下订单行。
请记住,这是一个简单的示例 - 手头的实际问题更复杂。我觉得最后一种方法是可行的方法-但希望对此有一些意见:)
【问题讨论】:
标签: domain-driven-design cqrs event-sourcing