<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Jeffrey's Sky

    Go with wind
    隨筆 - 14, 文章 - 1, 評論 - 15, 引用 - 0
    數據加載中……

    XA Datasource 與 Non-XA Datasource 區別

    An XA transaction, in the most general terms, is a "global transaction" that may span multiple resources. A non-XA transaction always involves just one resource.


    An XA transaction involves a coordinating transaction manager, with one or more databases (or other resources, like JMS) all involved in a single global transaction. Non-XA transactions have no transaction coordinator, and a single resource is doing all its transaction work itself (this is sometimes called local transactions).


    XA transactions come from the X/Open group specification on distributed, global transactions. JTA includes the X/Open XA spec, in modified form.


    Most stuff in the world is non-XA - a Servlet or EJB or plain old JDBC in a Java application talking to a single database. XA gets involved when you want to work with multiple resources - 2 or more databases, a database and a JMS connection, all of those plus maybe a JCA resource - all in a single transaction. In this scenario, you'll have an app server like Websphere or Weblogic or JBoss acting as the Transaction Manager, and your various resources (Oracle, Sybase, IBM MQ JMS, SAP, whatever) acting as transaction resources. Your code can then update/delete/publish/whatever across the many resources. When you say "commit", the results are commited across all of the resources. When you say "rollback", _everything_ is rolled back across all resources.


    The Transaction Manager coordinates all of this through a protocol called Two Phase Commit (2PC). This protocol also has to be supported by the individual resources.


    In terms of datasources, an XA datasource is a data source that can participate in an XA global transaction. A non-XA datasource generally can't participate in a global transaction (sort of - some people implement what's called a "last participant" optimization that can let you do this for exactly one non-XA item).


    For more details - see the JTA pages on java.sun.com. Look at the XAResource and Xid interfaces in JTA. See the X/Open XA Distributed Transaction specification. Do a google source on "Java JTA XA transaction".

    posted on 2010-08-27 13:39 Jeffrey Feng 閱讀(4574) 評論(2)  編輯  收藏 所屬分類: 數據庫

    評論

    # re: XA Datasource 與 Non-XA Datasource 區別[未登錄]  回復  更多評論   

    XA事務往往是包括多個數據源的全局事務,非XA是單個數據源的。
    2010-08-27 15:27 | Robin

    # re: XA Datasource 與 Non-XA Datasource 區別  回復  更多評論   

    @Robin
    Yes. Agree.
    2010-08-30 13:59 | Jeffrey Feng

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲AV永久青草无码精品| 国产亚洲精品精品国产亚洲综合| 亚洲国产成人片在线观看 | 永久中文字幕免费视频网站| 亚洲性无码av在线| 2021免费日韩视频网| 亚洲中文字幕在线无码一区二区| 人成午夜免费视频在线观看| ww亚洲ww在线观看国产| 成在人线AV无码免费| 亚洲精品无码aⅴ中文字幕蜜桃| 午夜时刻免费入口| 特黄aa级毛片免费视频播放| 亚洲精品国产日韩无码AV永久免费网 | 国产成人精品免费视频动漫| 亚洲欧洲自拍拍偷午夜色| 亚色九九九全国免费视频| 国产精品亚洲自在线播放页码| 在线jlzzjlzz免费播放| 日韩在线观看免费完整版视频| 亚洲熟妇中文字幕五十中出| 先锋影音资源片午夜在线观看视频免费播放| 亚洲另类激情综合偷自拍| 思思re热免费精品视频66| 另类专区另类专区亚洲| 曰韩亚洲av人人夜夜澡人人爽| 日韩精品无码一区二区三区免费| 亚洲一区在线视频| 免费一看一级毛片| 玖玖在线免费视频| 亚洲乱色熟女一区二区三区蜜臀| 亚洲国产精品无码久久久久久曰 | 中文字幕亚洲乱码熟女一区二区| A片在线免费观看| 亚洲人成网国产最新在线| 亚洲欧洲精品成人久久曰影片| 久久久久久国产精品免费免费男同 | 无码精品A∨在线观看免费| 黄色免费网址大全| 亚洲日本在线播放| 久久久久国产成人精品亚洲午夜|