WEB开发网
开发学院数据库DB2 使 XA 事务管理器灵活地应对资源管理器故障,确保... 阅读

使 XA 事务管理器灵活地应对资源管理器故障,确保更高的可用性

 2009-10-28 00:00:00 来源:WEB开发网   
核心提示: 情景:资源管理器崩溃,恢复可用后,使 XA 事务管理器灵活地应对资源管理器故障,确保更高的可用性(6),提交一个涉及到资源管理器的事务,请参见图 3,由于没有对不可用的 DB2 发出 XA 请求,回滚应该会正确运行(这个特定的 DB2 还没有被作为参与的 XA 资源管理器进行注册),测试: 事务

情景:资源管理器崩溃。恢复可用后,提交一个涉及到资源管理器的事务。请参见图 3。

测试:

事务管理器正在运行。

执行事务的进程使用 XA_OPEN 连接到 DB2。

关闭 DB2。

没有包含 DB2 的事务应该在正常运行。

启用 DB2。

提交一个包含了 DB2 的事务。检查应用程序是否由于 PoE 中的一些旧连接导致了连接错误。

检查行为:

在一些事务管理器中,由于旧的处理导致错误后,PoE 会进行重启,然后建立一个新的连接,并且重新提交事务。这意味着为了去除旧的连接处理,PoE 需要进行循环运行。

这有助于验证 问题 f。

图 3. 案例 3

使 XA 事务管理器灵活地应对资源管理器故障,确保更高的可用性

图片看不清楚?请点击这里查看原图(大图)。

案例 4:使用不可用的资源管理器启动进程和提交事务。

情景:资源管理器不可用时,启动一个 PoE。资源管理器不可用时,提交一个事务。请参见图 4。

测试:

事务管理器可用。

DB2 不可用。

启动一个新的 PoE。XA_OPEN 失败。

提交一个包含了指向 DB2 的 SQL 语句的事务。DB2 不可用时,会遇到 SQL 错误。没有 ax_reg 在流动(在动态注册的情况下)。由于没有对不可用的 DB2 发出 XA 请求,回滚应该会正确运行(这个特定的 DB2 还没有被作为参与的 XA 资源管理器进行注册)。

检测行为:

事务处理器总体上要保持可用。

上一页  1 2 3 4 5 6 7  下一页

Tags:XA 事务管理 灵活

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接