知识卡片

横切事务对本地与分布式选择透明

普通读书笔记卡 · 1976.ab

内容

事务与领域的交汇点集中在应用服务,若以横切关注点方式调用事务,对本地事务与分布式事务的选择就是透明的,对领域模型无影响。满足ACID的本地事务与刚性分布式事务可抽象为相同事务模型,都是成功则提交、失败则回滚,区别仅在实现机制(如JTA遵循X/A协议屏蔽底层资源)。用UserTransaction实现分布式事务与本地事务如出一辙,都可统一为工作单元模式,差异只在配置的数据源与事务管理器。发散:把事务做成横切关注点的最大红利,是让”本地还是分布式”退化为一个配置选项。

参考来源

- 位置:《解构领域驱动设计》第18章《领域驱动设计的战略考量》18.4.2(源文件:_epub-src/OEBPS/031.xhtml) - 结论依据:原文指出以横切方式调用事务使本地/分布式选择透明、对领域无影响,二者可统一为工作单元模式,差异只在配置。 - 原始内容:若以横切关注点的方式调用事务,对本地事务和分布式事务的选择就是透明的,对领域模型的设计与实现并无影响……都可以统一为工作单元模式。