什么是XA標準?
XA協(xié)議由Tuxedo首先提出的,并交給X/Open組織,作為資源管理器(數(shù)據(jù)庫)與事務管理器的接口標準。
目前,Oracle、Informix、DB2和Sybase等各大數(shù)據(jù)庫廠家都提供對XA的支持。
XA協(xié)議采用兩階段提交方式來管理分布式事務。
XA接口提供資源管理器與事務管理器之間進行通信的標準接口。
XA協(xié)議包括兩套函數(shù),以xa_開頭的及以ax_開頭的。
以下的函數(shù)使事務管理器可以對資源管理器進行的操作: 1)xa_open,xa_close:建立和關(guān)閉與資源管理器的連接。
2)xa_start,xa_end:開始和結(jié)束一個本地事務。
3)xa_prepare,xa_commit,xa_rollback:預提交、提交和回滾一個本地事務。
4)xa_recover:回滾一個已進行預提交的事務。
5)ax_開頭的函數(shù)使資源管理器可以動態(tài)地在事務管理器中進行注冊,并可以對XID(TRANSACTION IDS)進行操作。
6)ax_reg,ax_unreg;允許一個資源管理器在一個TMS(TRANSACTION MANAGER SERVER)中動態(tài)注冊或撤消注冊。