麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

分布式編程模式中的租約、事務和分布式事件機制

2019-11-18 14:50:04
字體:
來源:轉載
供稿:網友

  Jini 技術面向網絡及分布式計算的特性決定了Jini技術必然與傳統的單機系統在許多方面有概念上和實際應用中的差別。如網絡的延遲、失敗,或者設備的忽然撤出,將導致信息的無序和丟失;資源的獲得、保存、維護和回收情況更為復雜;不同實體之間通訊和協調工作的可靠性及效率并不像單機系統中那樣較為輕易地獲得保證。因而在 Jini 中以 java 為基礎加入了分布式編程模式,非凡是引入了租約、分布式事務和分布式事件。

  租約

  租約的基本概念是資源只能被使用一段時間,這由租約的持有者(lease holder)和租約的授權者(lease grantor)協商決定。

  租約接口的目標是為分布式系統和應用程序提供一種非凡的編程風格。這種編程風格是當某對象首次對該資源訪問時,由這兩個對象先協商,最后授權對資源進行某段時間的使用。

  在非分布式系統中,資源或服務將被授權直到被明確釋放或放棄,這種編程模式在分布式系統中注定要失敗,原因是不能保證放棄對資源或系統的使用是肯定成功的,這將導致系統的這部分資源永遠不會被釋放。

  為避免此類問題而引入了租約的概念。在租約中被租用的資源或服務的授權是基于時間的。一旦租借時間期滿,服務就將結束,資源將被釋放。租約的期限在第一次授權時決定,由租約的授權者和接收者采用request/response方式協商。租約可以在期滿前續約或取消。期滿時,雙方認為服務或資源已回收。

  租約概念的引入也可以用于解決分布式系統面臨的另一個問題。連續開機的分布式系統趨向于積累過時和不必要的信息,解決這種問題的常規方法是把清理無用資源作為一項系統治理員的任務。然而,當這種資源被租用時,就不會發生過時信息的積累,也不再需要以手工方法清除。租用的信息或資源僅在租約續約時才保存在系統中。因此被遺忘的信息經過有限時間后將被刪除。

  Jini系統中定義了一組接口以及相關的約定和協議,目的是使不同Java虛擬機通過協商產生各種資源的使用租約。可形成租約的協議有多種,可以分為對某個對象的訪問(引用)協議、對未來采取行動(事件通知)的協議和提供長久儲存的協議等。租約機制要和并發機制相結合,即某資源可以有多個并發的租約持有者。

  租約的特性包括:授權者確保持有者能在一段時間內對資源進行訪問;在租約期限內,租約持有者可以取消租約,授權者將清除相關的資源;持有者可以要求續約,續約期限由雙方協商決定;若租約到期,授權者將釋放相關資源,與取消租約的不同之處在于,授權者與持有者之間不需要通訊。

  事務

  事務式的行為在分布式計算中尤其重要,它提供了使一個或多個遠程參加者對一系列操作的結果保持一致的方法。Jini系統將實現事務語義交由事務中的個體對象處理。系統首先要提供的是對象之間確認事務時用來交換信息的合作機制,目標是提供最小的協議和接口的集合,用以讓對象實現事務語義。

  Jini描述的完成協議由分布式系統的兩階段提交協議組成。兩階段提交協議定義了分布式對象資源的通訊模式,這個協議需要一個治理者來保證操作集決議的一致性,即保證所有的參加者最終知道它們是應提交操作還是放棄操作。

  事務由一個治理者創建和監督,每個事務由一個標識來代表,它對于事務的治理者是唯一的。客戶通過一個對治理者的請求來創建事務,通常使用語義工廠類,如Transactionfactory來創建一個語義對象。在對一個服務實行操作時,這個語義對象就將作為一個參數傳遞。假如服務同意接受這個事務并治理它的操作,它必須作為一個參加者加入到這個事務中去。

  假如一個事務成功提交,那么所有在事務之下進行的操作都將完成。放棄事務意味著所有在事務之下進行的操作都如同完全沒有發生過一樣。提交事務需要每個參加者“表決”,表決可選擇“就緒”(預備提交)、“未改變”(只讀),或者“放棄”(事務應被放棄)。

  兩階段提交協議的設計目標是使對象能夠提供ACID屬性。缺省的事務語義定義了保留這些屬性的一個方法。ACID屬性是:

  ·Atomicity(原子化):所有在一個事務下的操作全部發生或者一個也不發生。

  ·Consistency(一致性):事務的完成必須使系統保持在一致的狀態。事務只是一個使保證一致性成為可能的工具,而它本身并不是一致性的保證者。

  ·Isolation(隔離性):正在執行的事務不應彼此影響。一個事務的參加者應該只能看到自己事務中操作的中間狀態,而不是其它事務的中間狀態。

  ·Durability(耐用性):事務提交的結果應像事務提交的對象實體一樣持久,但這個保證只能由對象來完成。

  依靠于參加者來實現ACID屬性是兩階段提交協議與傳統事務處理系統的最大不同之處。兩階段提交協議的定義使用了三個主要類型:

  ·Transactionmanager——事務治理者創建新的事務并協調參加者的動作。

  ·NestableTransactionManager——一些事務治理者能夠支持嵌套的事務。

  ·TransactionParticipant——當操作是在一個事務之下進行的,參加者必須加入事務,給治理者提供一個對 TransactonParticipant對象的引用,以便用來表決。

分布式事件

  1.分布式事件及通知

  分布式事件系統有一些與單機系統不同的特點和需要。由于存在網絡延遲和失敗的可能性,遠程對象事件的通知的順序可能因客戶的不同而異,或者根本沒有到達。一個通知到達的時間可能會很長,也可能會有這種情況,接收通知的對象一方不總是希望立即得到通知,而是在接收一方決定的一個確定時間得到。甚至可能發生注冊愛好的對象并不是事件通知應發送的對象。

  分布式通知的中心概念是在產生通知的對象和希望接收通知的其他對象之間加入第三方對象。它們可以從對象上卸下通知,實現多種傳遞保證,存儲通知,并進行通知的過濾和重新路由。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: aa国产视频一区二区 | 最新在线中文字幕 | 久久精品一区二区三区四区五区 | 在线播放免费人成毛片乱码 | 久国久产久精永久网页 | 国产91av视频 | 国产欧美精品一区二区三区四区 | 国产羞羞视频在线免费观看 | 久国久产久精永久网页 | 福利在线免费 | 黄色网址在线视频 | 日韩理论电影网 | 国产成人aⅴ | 久久影库| 黄色a级片免费观看 | 亚洲欧美成aⅴ人在线观看 av免费在线播放 | 欧美日韩大片在线观看 | 亚洲第一成人在线 | 男女视频免费看 | 看免费5xxaaa毛片| 久久久久久久一区二区三区 | 精品久久久久久综合日本 | 国产高清自拍一区 | 成人午夜免费看 | 俄罗斯16一20sex牲色另类 | 操嫩草| 悠悠成人资源亚洲一区二区 | 久久91亚洲人成电影网站 | 久草中文网 | 国产一区二区三区四区五区在线 | 成人黄视频在线观看 | 成人性视频欧美一区二区三区 | 亚洲影视中文字幕 | 国产a级片电影 | 日本网站一区二区三区 | 高清成人在线 | 国产午夜免费福利 | av黄色片网站 | 国产papa| 国产精品一区二区免费在线观看 | 精品无码一区在线观看 |