對典型分布式計算技術的分析和比較
1 概述
本文引用地址:http://www.ex-cimer.com/article/202226.htm不同的人對于分布式計算的理解是不同的,我們可以用不同的方式定義分布式計算的具體含義。其中一種較為普遍的定義就是,分布式計算就是利用網(wǎng)絡把成千上萬臺計算機連接起來,組成一臺虛擬的超級計算機,并利用它們的空閑時間和存儲空間來完成單臺計算機無法完成的超大規(guī)模計算事務的求解。分布式計算的最早形態(tài)出現(xiàn)在80年代末的Intel公司。隨著Internet的迅速發(fā)展和普及,分布式計算的研究在90年代后達到了高潮。Internet技術實現(xiàn)了計算機硬件的連通,Web則實現(xiàn)了網(wǎng)頁的連通,而分布式計算技術的目標就是實現(xiàn)Internet上所有資源的全面連通。它要把整個Internet整合成一臺巨大的超級計算機,實現(xiàn)計算資源、通信資源、軟件資源、信息資源、知識資源的全面共享,為現(xiàn)代信息技術開創(chuàng)一個新的紀元。
分布式計算研究主要集中在分布式操作系統(tǒng)和分布式計算環(huán)境研究兩個方面。但隨著Internet技術的飛速發(fā)展, 分布式計算的研究熱點也從以分布式操作系統(tǒng)為中心的傳統(tǒng)模式轉換到以網(wǎng)絡計算平臺為中心的實用分布式技術, 并取得了較大的成功。此外,在過去的20 多年間也涌現(xiàn)出了大量的分布式計算技術,如中間件技術、網(wǎng)格技術、移動Agent技術、P2P技術以及最近推出的Web Service技術,它們在特定的范圍內(nèi)都得到了廣泛的應用。但是,現(xiàn)有的分布式計算技術都存在著一些沒有解決的問題,從而也影響了分布式計算技術的使用和普及。本文力爭通過介紹分布式計算技術的工作原理,以及對幾種典型的分布式計算技術的分析和比較,來發(fā)現(xiàn)它們共同面臨的一些問題。除此之外,還簡要介紹了一下存儲整合對解決分布式計算中出現(xiàn)的一些問題所起到的作用。最后對分布式計算技術的發(fā)展方向進行了探討。
下面就讓我們來看一下分布式計算技術的工作原理。
2 分布式計算技術的工作原理
要想實現(xiàn)分布式計算,首先就要滿足三方面的條件:
第一、計算機之間需要能彼此通信;
第二、需要有實施的“交通”規(guī)則(例如,決定誰第一個通過,第二個做什么,如果某事件失敗會發(fā)生什么情況等);
第三、計算機之間需要能夠彼此尋找。
只有滿足了這三點,分布式計算才有可能實現(xiàn)。
目前,一個分布式網(wǎng)絡體系結構包括了安裝了超輕量軟件代理客戶端系統(tǒng),以及一臺或多臺專用分布計算管理服務器。此外,還會不斷有新的客戶端申請加入分布式計算的行列。當代理程序探測到客戶端的CPU處于空閑時,就會通知管理服務器此客戶端可以加入運算行列,然后就會請求發(fā)送應用程序包??蛻舳私邮盏椒掌靼l(fā)送的應用程序包之后,就會在機器的空閑時間里運行該程序,并且將結果返回給管理服務器。應用程序會以屏保程序,或者直接在后臺運行的方式執(zhí)行,不會影響用戶的正常操作。當客戶端需要運行本地應用程序的時候,CPU的控制權會立即返回給本地用戶,而分布式計算的應用程序也會中止運行。
3 幾種分布式計算技術 3.1 中間件技術
中間件是基礎軟件,是分布式系統(tǒng)中介于應用層和網(wǎng)絡層的一個功能層次,它能夠屏蔽操作系統(tǒng)(或網(wǎng)絡協(xié)議)的差異,實現(xiàn)分布式異構系統(tǒng)之間的互操作。分布式應用軟件借助這種軟件在不同的技術之間共享資源。中間件位于客戶機服務器的操作系統(tǒng)之上,管理計算資源和網(wǎng)絡通信。它擴展了C/S結構,形成了一個包括客戶端、中間件和服務器的多層結構?;谥虚g件分布式系統(tǒng)的體系結構如圖1所示。
基于中間件的分布式計算技術以中間件為橋梁,通過把數(shù)據(jù)轉移到計算之處的計算方式,把網(wǎng)絡系統(tǒng)的所有組件集成為一個連貫的可操作的異構系統(tǒng),從而達到網(wǎng)絡“透明”的目的。
早期的中間件比較簡單,僅具有消息通訊和事務管理功能。但隨著需求的多樣化,也產(chǎn)生了許多不同類別的中間件產(chǎn)品,如:消息中間件(MOM :Message-Oriented Middleware)、數(shù)據(jù)庫中間件(Database Middleware)、遠程過程調(diào)用中間件(RPC :Remote Process Call)、對象請求代理中間件(ORB :Object Request Broker)和事務處理中間件(TP Monitor:Transaction Process Monitor)。
圖1 中間件技術
3.2 網(wǎng)格技術
網(wǎng)格計算是通過Internet把分散在各處的硬件、軟件、信息資源連結成為一個巨大的整體,從而使得人們能夠利用地理上分散于各處的資源,完成各種大規(guī)模的、復雜的計算和數(shù)據(jù)處理的任務。網(wǎng)格計算建立的是一種新型的Internet基礎支撐結構,目標是將與Internet互聯(lián)的計算機設施社會化。網(wǎng)格計算的發(fā)展非常迅速,數(shù)據(jù)網(wǎng)格、服務網(wǎng)格、計算網(wǎng)格等各種網(wǎng)格系統(tǒng)在全球范圍內(nèi)得到廣泛的研究和實施。網(wǎng)格計算無疑是分布式計算技術通向計算時代的一個非常重要的里程碑。
網(wǎng)格的體系結構是有效進行網(wǎng)格計算的重要基礎,到目前為止比較重要的網(wǎng)格體系結構有兩個: 一個是以Globus項目為代表的五層沙漏結構,它是一個以協(xié)議為中心的框架;另一個是與Web服務相融合的開放網(wǎng)格服務結構OGSA(Open Grid Services Architecture),它與Web 服務一樣都是以服務為中心。但是,所有的網(wǎng)格系統(tǒng)都有這樣一個基本的、公共的體系結構:資源層、中間件層和應用層。
(1)網(wǎng)格資源層:它是構成網(wǎng)格系統(tǒng)的硬件基礎。包括Internet各種計算資源,這些計算資源通過網(wǎng)絡設備連接起來。
(2)網(wǎng)格中間件層:它是一系列工具和協(xié)議軟件。其功能是屏蔽資源層中計算資源的分布、異構特性,向網(wǎng)格應用層提供透明、一致的使用接口。
(3)網(wǎng)格應用層:它是用戶需求的具體體現(xiàn)。在網(wǎng)格操作系統(tǒng)的支持下,提供系統(tǒng)能接受的語言、Web 服務接口、二次開發(fā)環(huán)境和工具,并可配置支持工程應用、數(shù)據(jù)庫訪問的軟件等。
3.3 移動Agent技術
目前還沒有一個關于移動Agent的確切定義,我們一般認為移動Agent是一類能在自己控制之下從一臺計算機移動到另一臺計算機的自治程序,它們能為分布式應用提供方便的、高效的執(zhí)行框架。
移動Agent是一類特殊的軟件Agent,可以看成是軟件Agent技術與分布式計算技術相結合的產(chǎn)物,它除了具有軟件Agent的基本特性——自治性、響應性、主動性和推理性外,還具有移動性,即它可以在網(wǎng)絡上從一臺主機自主地移動到另一臺主機,代表用戶完成指定的任務。由于移動Agent可以在異構的軟、硬件網(wǎng)絡環(huán)境中自由移動,因此這種新的計算模式能有效地降低分布式計算中的網(wǎng)絡負載、提高通信效率、動態(tài)適應變化的網(wǎng)絡環(huán)境,并具有很好的安全性和容錯能力。但目前,所有的移動Agent系統(tǒng)還都很不成熟,存在著各種各樣的缺陷。所以,我們可以把目前的眾多Agent系統(tǒng)看成是實驗室系統(tǒng),它們離真正實用的產(chǎn)品還有很大的距離。
p2p機相關文章:p2p原理
評論