1 概述
所謂分布式計算就是在兩個或多個軟件互相共享信息,這些軟件既可以在同一臺計算機上運行,也可以在通過網(wǎng)絡連接起來的多臺計算機上運行。分布式計算研究主要集中在分布式操作系統(tǒng)和分布式計算環(huán)境研究兩個方面。但隨著Internet技術的飛速發(fā)展,分布式計算的研究熱點也從以分布式操作系統(tǒng)為中心的傳統(tǒng)模式轉(zhuǎn)換到以網(wǎng)絡計算平臺為中心實用分布式技術,并取得了較大的成功。此外,在過去的20多年間也涌現(xiàn)出了大量的分布式計算技術,如中間件技術、網(wǎng)格技術、移動Agent技術、P2P技術以及Web Service技術。它們在特定的范圍內(nèi)都得到了廣泛的應用。
2 幾種典型的分布式計算技術
2.1中間件技術
中間件(middleware)是一個基礎性軟件的一大類,屬于可復用軟件的范疇。顧名思義,中間件處于操作系統(tǒng)軟件與用戶的應用軟件的中間。中間件在操作系統(tǒng)、網(wǎng)絡和數(shù)據(jù)庫之上,應用軟件的下層,總的作用是為處于自己上層的應用軟件提供運行與開發(fā)的環(huán)境,幫助用戶靈活、高效地開發(fā)和集成復雜的應用軟件。
在眾多關于中間件的定義中,比較普遍被接受的是IDC表述的:中間件是一種獨立的系統(tǒng)軟件或服務程序,分布式應用軟件借助這種軟件在不同的技術之間共享資源,中間件位于客戶機服務器的操作系統(tǒng)之上,管理計算資源和網(wǎng)絡通信。
中科院軟件所研究員仲萃豪形象地把中間件定義為:平臺+通信。這個定義限定了只有用于分布式系統(tǒng)中的此類軟件才能被稱為中間件,同時此定義還可以把中間件與支撐軟件和實用軟件區(qū)分開來。
2.2 網(wǎng)格計算技術
網(wǎng)格計算(Grid computing)通過利用大量異構計算機(通常為桌面)的未用資源(CPU 周期和磁盤存儲),將其作為嵌入在分布式電信基礎設施中的一個虛擬的計算機集群,為解決大規(guī)模的計算問題提供了一個模型。網(wǎng)格計算的焦點放在支持跨管理域計算的能力,這使它與傳統(tǒng)的計算機集群或傳統(tǒng)的分布式計算相區(qū)別。
網(wǎng)格計算的設計目標是解決對于任何單一的超級計算機來說仍然大得難以解決的問題,并同時保持解決多個較小的問題的靈活性。這樣,網(wǎng)格計算就提供了一個多用戶環(huán)境。它的第二個目標就是:更好的利用可用計算機,迎合大型的計算練習斷斷續(xù)續(xù)的需求。這隱含著使用安全的授權技術,以允許遠程用戶控制計算資源。
網(wǎng)格計算包括共享異構資源(基于不同的平臺,硬件/軟件體系結構,以及計算機語言),這些資源位于不同的地理位置,屬于一個使用公開標準的網(wǎng)絡上的不同的管理域。簡而言之,它包括虛擬化計算資源。網(wǎng)格計算經(jīng)常和集群計算相混淆。二者主要的不同就是:集群是同構的,而網(wǎng)格是異構的;網(wǎng)格擴展包括用戶桌面機,而集群一般局限于數(shù)據(jù)中心。對于網(wǎng)格計算(Grid computing)這一術語有三重理解可供參考,如下:
為萬維網(wǎng)誕生起到關鍵性作用的歐洲核子研究組織(CERN,European Organization for Nuclear Research),其對網(wǎng)格計算是這樣定義的:“網(wǎng)格計算就是通過互聯(lián)網(wǎng)來共享強大的計算能力和數(shù)據(jù)儲存能力”。外部網(wǎng)絡(External grids)。事實上,網(wǎng)絡計算對分布在世界各地的、非營利性質(zhì)的研究機構頗有吸引力,進而造就了美國國家超級電腦應用中心計算生物學網(wǎng)格,如生物學和醫(yī)學信息學研究網(wǎng)絡。內(nèi)部網(wǎng)絡(Internal grids)。同樣,網(wǎng)絡計算對那些需要解決復雜計算問題的商業(yè)公司有著非同一般的吸引力,其目標是將企業(yè)內(nèi)部的計算能力最大化。
2.3 移動Agent技術
移動Agent的最初概念是在20世紀90年代初,由General移動Agentgic公司在推出商業(yè)系統(tǒng)Telescript時提出的。它是一可執(zhí)行的程序,分布式人工智能技術和網(wǎng)絡技術發(fā)展的必然結果,能夠攜帶其代碼和狀態(tài)自主地從網(wǎng)絡中一個節(jié)點移動到另一個節(jié)點上運行,尋找合適的計算資源和信息資源,完成特定的任務。移動Agent具有智能性和移動性,并根據(jù)服務需要協(xié)調(diào)多個Agent的行為,協(xié)作執(zhí)行特定任務。
移動Agent是一種軟件對象,它能攜帶執(zhí)行代碼、數(shù)據(jù)和運行狀態(tài),在復雜的網(wǎng)絡中自治的、有目的遷移,并能響應外部事件,在遷移過程中能保持狀態(tài)的一致性。移動Agent就是一個能在異構網(wǎng)絡中自主地從一臺主機遷移到另一臺主機,并可與其它Agent或資源交互的程序。
移動Agent技術是分布式技術和Agent技術相結合的產(chǎn)物,它結合了分布式計算機技術和人工智能技術,它除了具有智能Agent的最基本特性:自主能力、社交能力、適應能力和一致主動性,還具有移動能力、可靠性和安全性。移動Agent不同于基于過程的RPC,也不同于面向?qū)ο蟮膶ο笠,其獨特的對象傳遞思想和卓越的特性給分布式計算乃至開發(fā)系統(tǒng)帶來了巨大的革新。移動Agent技術在實際中得到了廣泛的應用,主要應用于電子商務、分布式信息檢索、無線通信服務、入侵檢測和網(wǎng)絡管理等方面。
2.4 P2P技術
P2P技術起源于最初的聯(lián)網(wǎng)通信方式,如在建筑物內(nèi)PC通過局域網(wǎng)互聯(lián),不同建筑物間通過Modem遠程撥號互聯(lián)。其中建立在TCP/IP協(xié)議之上的通信模式構成了今日互聯(lián)網(wǎng)的基礎,所以從基礎技術角度看,P2P不是新技術,而是新的應用技術模式。今天,P2P再一次被關注主要是由Napster以及ICQ類軟件的出現(xiàn),雖然在Napster之前P2P方式的研究也從未停止。現(xiàn)在互聯(lián)網(wǎng)是以S(Server)/B(Browser)或S/C(Client)結構的應用模式為主的,這樣的應用必須在網(wǎng)絡內(nèi)設置一個服務器,信息通過服務器才可以傳遞。信息或是先集中上傳到服務器保存,然后再分別下載(如網(wǎng)站),或是信息按服務器上專有規(guī)則(軟件)處理后才可在網(wǎng)絡上傳遞流動(如郵件)。
如今擁有Napster及ICQ類軟件的PC(或操作者)就可以選擇同樣擁有此類軟件的另一PC(或操作者)形成互聯(lián)(直接連接,不通過服務器),雙方共享資源,協(xié)同完成某種行動。而擁有同一P2P軟件的設備和用戶,還可以形成一個為其自己所有的在互聯(lián)網(wǎng)上的P2P專用網(wǎng)。
目前互聯(lián)網(wǎng)主要技術模式是S/C方式,此方式要在互聯(lián)網(wǎng)上設置擁有強大處理能力和大帶寬的高性能計算機,配合高檔的服務器軟件,再將大量的數(shù)據(jù)集中存放在上面,并且要安裝多樣化的服務軟件,在集中處理數(shù)據(jù)的同時可以對互聯(lián)網(wǎng)上其他PC進行服務,提供或接收數(shù)據(jù),提供處理能力及其他應用。對于一臺與服務器聯(lián)機并接受服務的PC機來說,這臺PC機就是客戶機,其性能可以相對弱小。而P2P技術的特征之一就是弱化了服務器的作用,甚至取消服務器,任意兩臺PC互為服務器,同時又是客戶機,即對等。右面是P2P與S/C方式的一些比較:
S/C方式造成互聯(lián)網(wǎng)絡上的集中,無論信息資源還是成本資源均向同一方向集中,這樣的模式符合一對多、強對弱的社會關系形式,如政府對個人、對企業(yè),大企業(yè)對小企業(yè),學校對學生,企業(yè)對職工等等關系。所以S/C方式是符合市場需求的。P2P方式將導致信息數(shù)量、成本資源都向互聯(lián)網(wǎng)各點均勻分布,也就是所謂“邊緣化“的趨勢。此模式符合“一對一”的特點,以及彼此相當?shù)纳鐣P系形式,如個人對個人,規(guī)模相當?shù)钠髽I(yè)之間,等等,這也是符合市場需求的(如ICQ)。所以這兩種方式會共存,有關P2P即將替代S/C模式的說法是不成立的。P2P有其獨特的市場空間,是現(xiàn)有互聯(lián)網(wǎng)應用的補充,這一點應該是毫無疑問的。
P2P技術特性:
1)既是S又是C,如何表現(xiàn)取決于用戶的要求,網(wǎng)絡應用由使用者自由驅(qū)動。
2)信息在網(wǎng)絡設備間直接流動,高速及時,降低中轉(zhuǎn)服務成本。
3)構成網(wǎng)絡設備互動的基礎和應用。
4)在使網(wǎng)絡信息分散化的同時,相同特性的P2P設備可以構成存在于互聯(lián)網(wǎng)這張大網(wǎng)中的子網(wǎng),使信息按新方式又一次集中。
2.5WebService技術
WebService使用標準技術,通過它,軟件應用程序資源在各網(wǎng)絡上均可用。因為Web Service基于標準接口,所以即使是以不同的語言編寫并且在不同的操作系統(tǒng)上運行,它們也可以進行通信。因此,Web Service是生成必須適用于網(wǎng)絡上不同系統(tǒng)的分布式應用程序的極好方法。
標準技術因為Web Service符合公認的標準,所以能夠以這種通?稍L問的方式來公開其資源。
Web Service使用的標準技術包括:通過WSDL文件公開描述其自身功能;通過XML消息(通常使用SOAP格式)與其他應用程序進行通信;使用標準網(wǎng)絡協(xié)議,如HTTP等。
Web Service(在中央)、其客戶端軟件應用程序(在左側)及其使用的資源(包括數(shù)據(jù)庫、其他Web Service等)(在右側)之間的關系(如圖1)。Web Service通過使用標準協(xié)議(如HTTP)交換XML消息來與客戶端和各種資源進行通信。在WebLogic Server上部署Web Service后,由WebLogic Server負責將傳入的XML消息路由到您編寫的Web Service代碼。Web Service將導出WSDL文件,以描述其接口,其他開發(fā)人員可以使用此文件來編寫訪問此Web Service的組件。
2.6 幾種技術的比較
Web Service技術的體系結構與基于中間件分布式系統(tǒng)的體系結構相比,發(fā)現(xiàn)它們是非常相似的,可以把體系結構中的Web程序看作中間件。從結構上來看,Web服務只是從側面對中間件平臺技術進行革新,雖然所有服務之間的通信都以XML格式的消息為基礎,但調(diào)用服務的基本途徑主要還是RPC,而且具體實現(xiàn)并沒有提供一種全新的編程模式。
網(wǎng)格計算與基于中間件的分布式計算技術相比較,它依然以“中間件”為技術核心,在實現(xiàn)形式上并沒有太大的改變。然而經(jīng)過一系列的技術革新,網(wǎng)格系統(tǒng)中的技術內(nèi)涵已經(jīng)發(fā)生了深刻的變化。其一,基于中間件的分布式計算技術的資源主要是指數(shù)據(jù)和軟件,而網(wǎng)格計算的資源已經(jīng)延伸到所有用于共享的實體,包括硬件、軟件,甚至分布式文件系統(tǒng)、緩沖池等;其二,在Internet上,網(wǎng)格中間件層提供了與Web服務一樣優(yōu)秀的擴展功能,打破了傳統(tǒng)分布式技術C/S模式的局限。
網(wǎng)格計算、Web Service等技術在異構平臺上構筑了一層通用的、與平臺無關的信息和服務交換設施,從而屏蔽了Internet中千差萬別的差異,使信息和服務暢通無阻地在計算機之間流動。網(wǎng)格計算與Web Service技術的共同載體是Internet。但兩者的不同之處在于,網(wǎng)格系統(tǒng)連接物理上分散的硬件資源,形成虛擬計算組織,從而使計算資源得到充分共享。而Web服務則是以商務應用為背景,是基于網(wǎng)格系統(tǒng)之上的。網(wǎng)格系統(tǒng)為Web服務提供一個與硬件無關的虛擬計算機;而Web服務是架構在虛擬計算機平臺上,與環(huán)境、語言無關的應用集成平臺。
盡管各種分布式計算技術在理念、規(guī)范和實現(xiàn)等方面有較大的差異,但它們之間并不矛盾,而是一種承上啟下的關系,有時甚至是融合的。因此,各種分布式計算技術可以共同存在,它們的相互結合也是非常有意義和現(xiàn)實的。
3 存儲整合
因為分布式計算模式的核心常常是每個部門選擇各自不同的電腦系統(tǒng),這樣就會造成由于數(shù)據(jù)格式的不統(tǒng)一所導致的管理困難,其次管理分布式計算中所用的大量存儲設備所需的費用也是一筆龐大的開支。這些都有悖于分布式計算技術的初衷。所以,存儲整合對分布式計算技術的發(fā)展起著不可低估的作用。
存儲整合是指多個異構型主機共享集中式存儲。針對不同的環(huán)境和要求,有許多不同的整合方法,但主要有以下三種形式:
1)從存儲在多個服務器上轉(zhuǎn)變?yōu)榇鎯υ趩蝹服務器上。此模式可以降低管理工作的復雜性和對數(shù)據(jù)中心占地面積的要求;
2)直接將多個異構型服務器附加到一個存儲設備上。此模式極大降低了存儲成本,同時也可以簡化管理;
3)整合到存儲局域網(wǎng)上(SAN)。此模式既有利于提高工作效率,降低管理工作的復雜性,同時還可以提高可擴展性,可用性和數(shù)據(jù)可訪問性。
所以,在分布式計算技術越來越得到廣泛應用的今天,存儲整合技術也顯示出它重要的地位。
4 共同存在的問題
通過上面對幾種技術的分析與比較,我們不難發(fā)現(xiàn)它們均存在著一些共同的問題。
1)標準問題
目前,幾乎所有的分布式計算技術都沒有完整的統(tǒng)一的標準,雖然已開始這方面的工作,標準的缺乏使得分布式計算技術研究分散,很難形成穩(wěn)定的研究方向,從而在很大程度上制約了分布式計算技術的發(fā)展。
2)軟件方法問題
軟件方法學是軟件能夠進行工業(yè)化生產(chǎn)的前提。但缺乏可行的軟件方法學使得分布式計算軟件的質(zhì)量、開發(fā)進度等很難得到保證,沒有工業(yè)化生產(chǎn)方式,分布式計算系統(tǒng)的普及將十分困難。
3)異構問題
現(xiàn)在的網(wǎng)絡是一個異構的環(huán)境,分布式計算技術首先需要解決異構環(huán)境的互操作問題。而要解決異構環(huán)境的互操作問題,首要的任務是如何互相識別。目前,既不可能要求所有的資源用同一種方式描述,又沒有方法可智能地識別這些資源,這就導致任何一種分布式計算技術只能在一定的范圍內(nèi)使用。
4)安全性問題
分布式計算技術面臨的最大挑戰(zhàn)就是不斷增長的網(wǎng)絡規(guī)模,整個平臺的安全性方面的問題就會極為嚴重。
5 展望
隨著Internet上的硬件、軟件、數(shù)據(jù)庫等資源急速膨脹,其關聯(lián)關系不斷發(fā)生變化,但是到目前為止,所有這些資源的共享和社會化程度還很低,基本上是各自為政,相互間缺乏有效的交互、協(xié)作與協(xié)同能力。因此要創(chuàng)建大型的、松散的、健壯的分布式系統(tǒng)還必須以先進技術和大量勞動為基礎,除了各種資源本身的技術和管理之外,關鍵的因素是標準的建立,從底層信號的傳輸?shù)綇碗s業(yè)務的流程等各種不同的層次都要形成統(tǒng)一的標準。此外到目前為止,所有的分布式計算技術都或多或少存在沒有解決的問題,還沒有哪一種技術被所有的研究者認同為分布式計算技術研究的方向,也沒有哪一種技術能實現(xiàn)完全意義上的分布式計算,滿足所有分布式計算的需求。
核心關注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統(tǒng)的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標題:對幾種典型分布式計算技術的比較
本文網(wǎng)址:http://www.ezxoed.cn/html/support/1112153246.html