XA

XA

計算機術語
XA協議由Tuxedo首先提出的,并交給X/Open組織,作為資源管理器(數據庫)與事務管理器的接口标準。目前,Oracle、Informix、DB2和Sybase等各大數據庫廠家都提供對XA的支持。XA協議采用兩階段提交方式來管理分布式事務。XA接口提供資源管理器與事務管理器之間進行通信的标準接口。XA協議包括兩套函數,以xa開頭的及以ax開頭的。
    中文名: 外文名:XA 所屬學科: 提出:Tuxedo 組織:X/Open 支持:Oracle、Informix、DB2和Sybase

簡介

取決于上下文, XA 有多種意思. 我們常見的數據庫連接交易中的 XA 是指由 X/Open 組織提出的分布式交易處理的規範. XA 規範主要定義了事務管理器(Transaction Manager)和局部資源管理器(Local Resource Manager)之間的接口。

有人說 XA 是 eXtended Architecture 的縮寫, 其實我覺得這僅僅是一種巧合. eXtended Architecture 是一種CD ROM的驅動架構。

操作

以下的函數使事務管理器可以對資源管理器進行的操作:

1)xa_open,xa_close:建立和關閉與資源管理器的連接。

2)xa_start,xa_end:開始和結束一個本地事務。

3)xa_prepare,xa_commit,xa_rollback:預提交、提交和回滾一個本地事務。

4)xa_recover:回滾一個已進行預提交的事務。

5)ax_開頭的函數使資源管理器可以動态地在事務管理器中進行注冊,并可以對XID(TRANSACTION IDS)進行操作。

6)ax_reg,ax_unreg;允許一個資源管理器在一個TMS(TRANSACTION MANAGER SERVER)中動态注冊或撤消注冊。

接口詳解

XA接口是雙向的系統接口,在事務管理器(Transaction Manager)以及一個或多個資源管理器(Resource Manager)之間形成通信橋梁。

事務管理器控制着JTA事務,管理事務生命周期,并協調資源。在JTA中,事務管理器抽象為javax.transaction.TransactionManager接口,并通過底層事務服務(即JTS)實現。資源管理器負責控制和管理實際資源(如數據庫或JMS隊列)。

相關詞條

相關搜索

其它詞條