Xa数据源和非Xa数据源的选择

Weblogic Xa数据源和非Xa数据源的选择

在项目上,不管是ADF应用,BPM应用,或者是OSB、SOA接口,数据源和出站连接池的建立必然少不了,而数据源的类型就有Xa数据源和非Xa数据源,那我们如何选择呢,选择不当会造成什么后果呢,下面给出一点小小的心得

如何选择:

在新建数据源的时候,经常面临是建立Xa数据源还是非Xa数据源,这块有一个选择标准,如果数据库后台package的函数或者过程

需要commit或者rollback,那么调用这个package的数据源就必须是非Xa的。

换言之,需要统一事物管理的用Xa数据源,事物需要单独处理的用非Xa数据源。

如Soa、Osb接口就需要用Xa数据源,ADF程序或者自开发的有用到JDBC连接方式的程序都需要用非Xa数据源

选择不当:

如果在调用程序中有commit或者rollback,而数据源又选择了Xa类型,后台 可能会出现如下错误

JDBC driver does not support XA, hence cannot be a participant in two-phase commit. To force this participation, set the GlobalTransactionsProtocol attribute to LoggingLastResource (recommended) or EmulateTwoPhaseCommit for the Data Source = wmsSqlServerDS

XA数据源超时设置:

XA数据源建立后,通常需要设置下事物超时和超时时间

posted @ 2019-06-16 12:34  木棉貮号  阅读(1434)  评论(0编辑  收藏  举报