标签: jboss5.x java-ee-5 xa
我们的项目中有一些地方需要使用XA交易。但是在大多数项目中,常规的非XA数据源都可以。我一直想知道,我是否需要为同一个数据库定义2个版本的数据源,XA和非XA?我担心XA交易可能代价高昂,因此我希望尽可能避免使用它们。
答案 0 :(得分:1)
如果您担心性能,这是一种非常合理的方法,因为2PC提交协议可能会慢4倍。当然这需要合格
此外,当发生故障时,事务可以进入不确定状态,这实际上会锁定作为事务的一部分而更改的所有记录,直到它们被恢复。通过不使用XA,可以避免这种情况。