gpt4 book ai didi

transactions - 实现领域驱动设计和交易

转载 作者:行者123 更新时间:2023-12-05 08:57:09 29 4
gpt4 key购买 nike

在阅读 Vaughn Vernon 的实现领域驱动设计后,我至少对一件事感到困惑。在第 12 章存储库中,他说事务是在应用程序层中管理的。但他也说聚合是事务一致性边界的同义词。由于存储库提供了对聚合的全局访问,为什么不能管理事务在存储库中?是因为规则 aggregate == transactional consistency boundary 只是一个经验法则有时必须打破,还是有其他原因?

最佳答案

why couldn't transactions be managed in repositories?

因为存储库不是“业务事务”的抽象,所以存储库是“您可以从中获取或添加到的域对象的集合”的抽象.

根据定义,交易有开始和结束。这是一个过程。存储库不是。 Transaction 和 Repository 之间的关系不是is-a,而是has-a。事务使用其存储库。

当我们说聚合应该是一致性边界时,我们的意思是它应该是唯一的状态 block 交易包围,而不是说聚合应该 一笔交易。

关于transactions - 实现领域驱动设计和交易,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36018995/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com