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


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

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

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

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

          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          導航

          統計

          公告

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

          常用鏈接

          留言簿(4)

          隨筆檔案(20)

          文章分類(25)

          文章檔案(25)

          新聞分類(4)

          新聞檔案(4)

          相冊

          收藏夾(27)

          個人主頁

          網絡博客

          最新隨筆

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 奇台县| 舒兰市| 岢岚县| 柏乡县| 楚雄市| 鹤岗市| 永清县| 东丰县| 博客| 杂多县| 合山市| 凌源市| 手机| 永新县| 北宁市| 濮阳市| 沙河市| 南岸区| 清苑县| 文昌市| 沙湾县| 庆元县| 镇远县| 平陆县| 黄山市| 贵港市| 两当县| 托克逊县| 胶州市| 永兴县| 普兰店市| 光泽县| 柘城县| 徐汇区| 大丰市| 金坛市| 元阳县| 南靖县| 运城市| 河源市| 肇州县|