XA是open group提出的分布式事務處理規范,JTA支持XA規范,JTA只規定了接口,有些應用容器提供實現,也有一些三方的開源實現可用,比如Atomikos。
如果PostgreSQL參與分布式事務(XA)處理,則需要在配置文件postgres.conf中設置max_prepared_transactions參數,此參數用於指定分布式事務中兩步提交准備事務的最大數量。默認值為0,此時不支持分布式事務。
max_prepared_transactions參數值不應該小於max_connections參數值,這樣每一個session都可以至少有一個可用的准備事務。
1
2
|
max_connections = 100
max_prepared_transactions = 100
|
如果有standby服務器,則standby服務器上這兩個參數值都不能小於master服務器上的相應值。