WEB事務:回滾(callback)和補償(compensation)兩個概念的區別


          補償與回滾不同,因為它是一種當工作流中發生違反規則的情況時,取消已成功完成和提交的事務所產生的影響的有效方法。在兩個帳戶間進行資金劃轉的事務是一個典型的回滾示例。第一個調用將資金從一個帳戶中取出,第二個調用將相同數額的資金劃轉至另一個帳戶。只要數據庫支持兩階段提交模型,如果在事務中引發異常,回滾可恢復一致的狀態。

            設想一下一個訂單處理工作流,其中一個事務被用于通過信用卡進行支付。第一步,首先從信用卡中提取資金來支付貨款。然后,在交易成功完成后,該貨物不能再被銷售。如果違反了業務規則,需要按照合適的規定對交易結果進行補償 — 一般是將資金劃入簽帳卡。

          ??補償就是一次真正的操作,只是上一次操作的反操作。
          ?????
          ?? 而回滾是一個取消動作,即取消上一次還沒有完成的操作 ;要能作回滾,就必須鎖定資源啦

          posted on 2006-11-17 17:00 Timothy 閱讀(1382) 評論(0)  編輯  收藏 所屬分類: J2EE開發環境

          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          導航

          統計

          公告

          語義Web : 網絡就是計算機,軟件就是服務!

          常用鏈接

          留言簿(4)

          隨筆檔案(20)

          文章分類(25)

          文章檔案(25)

          新聞分類(4)

          新聞檔案(4)

          相冊

          收藏夾(27)

          個人主頁

          網絡博客

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 农安县| 襄城县| 闽侯县| 建始县| 什邡市| 永定县| 清水河县| 永吉县| 定陶县| 资阳市| 门源| 都昌县| 苍山县| 珠海市| 米林县| 广平县| 汽车| 宁海县| 兴和县| 贡山| 白银市| 尼勒克县| 海城市| 滦平县| 台江县| 浮梁县| 西盟| 当阳市| 青河县| 南乐县| 桦川县| 常宁市| 永春县| 澄迈县| 瓦房店市| 济南市| 黑水县| 离岛区| 公主岭市| 田阳县| 桂林市|