5

我想将记录从一个数据库移动到另一个位于不同机器上的数据库。记录应该从第一个数据库中删除并自动插入到第二个数据库中。

我们可以使用 xa 吗?我相信 xa 使用 2 阶段提交算法,该算法需要对资源进行阻塞锁定

目标数据库是 EIS 数据库,因此应锁定最短时间。

4

2 回答 2

1

XA 确实是一个两阶段提交阻止协议,但在我的例子中,只有两个实体涉及第一个实体非常快。所以 2PC 会为我有效地工作。

对于更一般的场景,可以使用 3 阶段提交。这是一个非阻塞协议。虽然没有'似乎有任何java规范。

还遇到了 BTP 和http://jotm.objectweb.org/jotm-btp.html 不确定它与 JDBC 适配器融合的难易程度。

于 2011-12-01T18:10:55.913 回答
0

XA 对锁定机制没有任何影响。即使您更新两个单独的事务资源,它也只是确保保留 ACIDity。如果我理解正确,您的用例只会更新一个,因此这里不需要 XA。

于 2011-11-30T12:04:00.200 回答