關于db事務的理解

          Posted on 2006-10-25 10:27 英雄 閱讀(656) 評論(0)  編輯  收藏
          對于事務,往往有兩方面需求,一方面是希望幾個動作要么全部做了,要么全部當沒發生過;另一方面則是同步的需求,希望這一系列動作是在一瞬間完成,就是在這段時間沒有別人的動作發生。
          db提供了事務的支持,雖然各個數據庫支持的細節還不太一樣,但都在這兩方面的范疇內。
          應用系統是db+應用軟件的產物。所以在應用系統中滿足事務的需求就不能僅僅從db獲得支持。比如,一個請求的處理既要改表,又要刪除文件。對于第一方面的需求,如果要回滾事務,db可以回滾表,文件卻得自己刪除。第二方面的需求,db可以提高事務隔離級別,或lock多個表,對于應用軟件內存的共享資源就得自己設置鎖監控。(有時候用戶希望在幾個請求處理來回中實現不被別人改表。)
          因為事務控制細節不一樣,最麻煩的是怎么移植數據庫。我想,不如這樣使用db的事務機制。只使用它的回滾功能。對于同步功能,使用監控內存對象來完成。這樣整個系統統一使用數據庫的對第一方面的需求支持就可以(jdbc好像使用默認隔離級別就行)。不知道這樣的理解有沒有問題,拋磚引玉,敬請大家討論!

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


          網站導航:
           
          主站蜘蛛池模板: 和龙市| 台北市| 离岛区| 栾川县| 英吉沙县| 镇宁| 黔西县| 桃源县| 蒙自县| 德令哈市| 新营市| 镇原县| 安阳市| 牙克石市| 措美县| 齐河县| 霍州市| 紫金县| 阜宁县| 延边| 林甸县| 黄龙县| 综艺| 无为县| 涞源县| 井冈山市| 攀枝花市| 东山县| 焦作市| 剑河县| 沿河| 玉树县| 丹凤县| 霍城县| 碌曲县| 大方县| 厦门市| 枞阳县| 扎赉特旗| 定西市| 沾益县|