J2EE交易架構:構建架構
來源:互聯網
上載者:User
廉價的計算能力和不斷增加的網路頻寬促進了以組件為基礎的分散式運算程式的發展。以組件為基礎的分布式程式是一個服務架構。它由物理上獨立的電腦上的不同的應用組件構成。對使用者來說,它們就像是運行在一台機器上的單一應用程式。有幾個因素促進了分布式系統的應用,而不是傳統的集中式系統。
· 分布式應用:一些任務本身就是分布的。這個特性決定需要多個agent合作工作。在這種情況下,定位和擷取有效和最需要的計算能力及資料具有優先權。
· 可靠性:因為系統的共用、合作和分布的特性,系統中不存在一個單個的失敗點。使用新的容錯、恢複和分布同步技術,更好的可靠性可以得到滿足。
· 可擴充性:對應用的需求日益繁多,正確的設計系統,就可以通過增加新的服務和硬體來處理更多的負載。
· 效能:由於處理涉及到更多的應用範圍,這些難題從本質上講越來越複雜。為瞭解決日益複雜的問題,我們需要更快的電腦,這些電腦在可以接受的價格下具有更高的計算能力。
· 經濟性:擷取相同等級的計算能力,使用分布在多台機器的系統其費用可以更低一些
對於使用者來說,通過網路互連的異構電腦上的異構應用系統就像是在單台物理機器上的標準的應用系統。要達到這樣的透明度,分布是系統需要在如下方面做到透明。
· 資料定位:對於系統使用者來說,他們不需要知道資料位元於網路中的哪一個地方
· 失敗:對系統使用者來說,他們不需要關注資料的一致性
· 複製:系統使用者不需要知道資料是如何被複製的
· 分布:系統使用者不需要知道計算能力和資料如何通過系統被分布的
分布式系統允許使用者透明的儲存、存取和操作來至多個電腦的資料,能在系統發生故障的時候鑑效組資料的完整性。對分布式資料和交易的管理分成本地和全域兩個層級。本機資料管理者或資源管理者能夠訪問和操作本機資料和資源。資源管理者提供了資料的透明定位,資料模型和資料庫的安全與授權控制。本地的交易管理器負責處理計算系統交易的初始化、監控和終止。分布式交易系統將網路中相關的交易視為單一交易從而擴充了本地交易系統的範圍。
交易是一組語句的集合表示一個工作單元,他們必須作為一個單元被執行。交易是位於資源上的操作的一個序列比如讀、寫或是更新。這些操作序列將系統由一個穩定態轉化為新的穩定態。為了真實的反映系統中的實體,一個交易應該具有下面的特性:
· 原子性:這個特性指全部都做或是全部都不做。操作序列或者是成功或者是失敗。一個交易應該被認為是一個單一的操作單元。完成的交易應該被提交,沒有完成的交易應該被復原或是恢複為它的開始狀態。絕不可能只有部分工作被提交。