1. 程式人生 > >企業應用架構模式之工作單元模式

企業應用架構模式之工作單元模式

工作單元模式是一種物件-關係行為模式。其定義如下:維護受業務影響的物件列表,並協調變化和併發問題的解決。

該模式主要考慮的問題是:資料庫的資料讀入記憶體後的資料物件,被改變後在什麼時機提交。一般而言,可以有兩種提交方式,即時提交和擇機提交。

(1)即時提交:當物件改變的時候馬上提交到資料庫。這樣的好處是不需要維護一個受影響物件的列表,但是會導致資料庫的連線操作過多,影響效能。而且,它對效能的影響會導致系統響應變慢。

(2)用工作單元儲存物件的變化,擇機提交。 擇機提交需要考慮兩方面的事情,物件變化的記錄與提交時機。

物件變化的記錄可以考慮以下3種方法:

a,呼叫者註冊,資料物件用isDirty

的標識,呼叫者改變資料物件後,將該標識置為True

b,物件註冊,物件的每個Setting方法都會自動將isDirty的標識置為True

c,拷貝物件:(1)讀操作時拷貝,在提交的時候比較當前物件與拷貝物件,看物件是否發生了改變。(2)寫操作時拷貝,一旦物件發生寫操作,拷貝物件,提交時把所有物件直接提交即可

提交時機也可以考慮以下方法:

a,定時提交,使用定時器,隔固定時間提交一次。

b,修改累積到一定量的時候提交,設定一個受影響物件個數的閾值,當達到閾值的時候提交。

c,退出時提交,退出系統是提交修改。