【发布时间】:2016-01-06 14:57:06
【问题描述】:
我有一个使用两个数据库的 Spring Batch 应用程序。一个用于作业存储库和一个包含业务数据的数据库。目前,我为这些数据源使用了两个不同的事务管理器,但我公司的一些人建议使用单个 JTA TransactionManager(带有 XA)。这真的正确吗?如果对业务数据库的事务失败,这是否意味着对作业存储库的任何更新也会回滚?这可能是不可取的。在这种情况下,最佳做法是什么?
【问题讨论】:
-
分布式事务 (XA) 是解决您的问题的唯一方法(当 SB 元数据和业务数据表位于不同的数据源上时)
标签: spring spring-batch jta transactionmanager