小编Mat*_*ell的帖子

我应该在没有事件存储的系统中避免聚合(DDD)吗?

我正在研究在没有事件存储的系统中采用域驱动设计中的(根)聚合概念的可能性。但是,我对两者的了解越多,就越觉得一个没有另一个就不可能存在。

我还没有读完蓝皮书,但是到目前为止,我对根聚合的理解是,它是聚合的“树”,需要在该根聚合内保持一致。聚合只能通过其所属的根聚合进行修改。最后,根基本上可以通过“定义此聚合独立性是否有意义,并且它是否可以单独存在于此域中”来定义。

想象一下一个绿地项目,在该项目中尚未进行事件采购的工程设计,但将来可能会从中受益。没有事件存储将消除跟踪在特定时间点影响根聚合的所有域事件的可能性。这些命令将必须突变根聚合。另外,由于没有事件可重播性,读取端将被限制对“根聚合{id}已更新”做出反应。

在没有事件存储的情况下,是否存在任何合理的方式来存在(根)聚合的概念,还是应该坚持“传统”实体建模,直到有意义地投资于事件采购为止?

domain-driven-design event-sourcing

1
推荐指数
1
解决办法
74
查看次数