分布式計算概述_第1頁
分布式計算概述_第2頁
分布式計算概述_第3頁
分布式計算概述_第4頁
分布式計算概述_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、1,一 . 分布式計算概述,1 分布式計算技術(shù)。 RPC CORBA XML WEB服務(wù) J2EE NET 消息隊列 目錄服務(wù) 2 COM COM歷史 COM結(jié)構(gòu) COM特性,2,1 主流的分布式計算技術(shù)及規(guī)范,3,1.1 RPC,第一個獲得廣泛認(rèn)可的分布式計算技術(shù)是遠(yuǎn)程過程調(diào)用(Remote Process Call RPC)。使用RPC,客戶應(yīng)用程序可以調(diào)用在遠(yuǎn)程計算機(jī)上實現(xiàn)的C語言函數(shù)。對于遠(yuǎn)程過程調(diào)用的體系結(jié)構(gòu)來說,ONCRPC(Open Network Computing RPC)和DCE(Open Groups Distributed Computing Environment)是

2、主流標(biāo)準(zhǔn)。 在RPC機(jī)制下,為了實現(xiàn)跨進(jìn)程甚至跨機(jī)器的通訊,它采用了一種稱為列集(marshaling)的方法,數(shù)據(jù)傳輸之前,先進(jìn)行列集,然后通過網(wǎng)絡(luò)協(xié)議傳到通訊的另一端,讀取數(shù)據(jù)時,先對數(shù)據(jù)進(jìn)行散集(unmarshaling),它是列集的相反過程。 Sun公司于1985年發(fā)行了它的RPC軟件包的第一個版本。使用Sun RPC最廣泛流行的是NFS,即Sun的網(wǎng)絡(luò)文件系統(tǒng)。 在分布式計算領(lǐng)域,RPC更多地被用作其他高層的分布式計算技術(shù)的通訊基礎(chǔ),而不是單獨地使用,但是,RPC所提出的一些概念,比如數(shù)據(jù)的列集與散集、認(rèn)證與加密等,都被其他的技術(shù)所繼承和發(fā)展。,4,1.2 CORBA,分布式對象.

3、OMG (Object Management Group) 1991年1.0 1994年2.0 98年 3.0 ORB,OMG IDL,語言映射,存根與架構(gòu)( stub &skeleton ),動態(tài)調(diào)用接口(Dynamic Invocation Interface),接口存儲庫(Interface Repository),實現(xiàn)存儲庫(Implementation Repository),對象適配器(ObjectAdapter) ,ORB 之間的互操作,(Interoperability Between ORB)。,5,ORB功能: (類比SCM) 確定服務(wù)器位置,轉(zhuǎn)換不同數(shù)據(jù)格式。為異構(gòu)環(huán)境中

4、的客戶和服務(wù)器提供互操作性。它屏蔽了以下內(nèi)容: 1。對象位置 2。對象的實現(xiàn) 3。對象的狀態(tài)(動態(tài)激活) 4。對象的通訊機(jī)制(TCP/IP,管道,共享內(nèi)存,LPC等) 5。數(shù)據(jù)表示 語言映射 (類比COM IDL) OMG為IDL到 C,C,SmallTalk、Ada、Cobol,Java語言映射制訂了標(biāo)準(zhǔn)。 存根與架構(gòu) (類比代理與存根)存根代表客戶創(chuàng)建并發(fā)出請求,架構(gòu)則把請求轉(zhuǎn)交給CORBA實現(xiàn)。被靜態(tài)地連接到客戶和服務(wù)器上。 動態(tài)調(diào)用 (類比晚綁定,自動化接口) 動態(tài)調(diào)用接口DII(Dynamic Invocation Interface)動態(tài)架構(gòu)接口DSI(Dynamic Skelet

5、on Interface)。支持動態(tài)調(diào)用過程,不是在編譯時刻,而是在運(yùn)行時刻。由ORB直接提供。 接口存儲庫(類比類型庫): 負(fù)責(zé)對象的IDL接口定義的存儲、分布和管理。 客戶在運(yùn)行時用來獲得所有注冊過的組件的接口描述,它們所支持的方法以及參數(shù)。(方法簽名)。是運(yùn)行時的分布式數(shù)據(jù)庫,包含了IDL定義的機(jī)器可讀版本。,6,對象適配器: 位于ORB的核心通訊服務(wù)之上,是ORB與對象實現(xiàn)之間的接口。代表服務(wù)器接受客戶的服務(wù)器請求。它為實例化服務(wù)器對象,傳遞請求提供運(yùn)行環(huán)境,它向?qū)崿F(xiàn)存儲庫注冊它所支持的類及其運(yùn)行實例。 實現(xiàn)存儲庫: 是一個運(yùn)行存儲庫,提供有關(guān)服務(wù)器支持的類,實例化的對象及其標(biāo)識等。同

6、時存儲ORB的附加信息(安全,審計、等) 2.0.標(biāo)準(zhǔn)。不同的ORB之間如何協(xié)作、通訊 GIOP:General Inter-ORB Protocal:規(guī)定了ORB之間通訊的一組報文格式和公用數(shù)據(jù)表示(CDR)(二進(jìn)制格式) IIOP:Internet Inter-ORB Protocal : 規(guī)定了GIOP消息如何在TCP/IP網(wǎng)絡(luò)上交換。 CORBA服務(wù):命名服務(wù),事件服務(wù),通知服務(wù),交易服務(wù),事務(wù)服務(wù)。 此部分內(nèi)容參見基于CCORBA 高級編程 Michi Henning Steve Vinoski 著,清華大學(xué)出版社。 CORBA原理及應(yīng)用朱其亮,鄭斌。北京郵電大學(xué)出版社。,7,1.3

7、 XML,1969年IBM公司發(fā)明了第一種現(xiàn)代標(biāo)記語言“通用標(biāo)記語言”GML(Generalized Markup Language),發(fā)展成為標(biāo)準(zhǔn)通用標(biāo)記語言SGML(Standard Generalized Markup Language)。1986年SGML被ISO接受為國際性的數(shù)據(jù)存儲和交換的標(biāo)準(zhǔn)。 SGML 功能非常強(qiáng)大,擴(kuò)展性極強(qiáng),但非常復(fù)雜。它要求對數(shù)據(jù)的每一個字節(jié)都要加以說明。 1996年,w3c 設(shè)計一種新的擴(kuò)展標(biāo)記語言, XML eXtensible Markup Language 可擴(kuò)展的標(biāo)記語言。 結(jié)合SGML 的靈活性和強(qiáng)大的功能與HTML語言的簡單性。 XML 是一

8、種簡單的自我描述的標(biāo)記語言。1998年2月成為w3c的推薦標(biāo)準(zhǔn)。,8,XML是一種界定文本數(shù)據(jù)的簡便而標(biāo)準(zhǔn)的方法,XML的標(biāo)記用來說明所描述的概念,而屬性則用來控制他們的結(jié)構(gòu)。XML的數(shù)據(jù)描述機(jī)制意味著它將成為一種在Internet上共享信息的強(qiáng)大途徑。XML能夠在不同的用戶和程序之間交換數(shù)據(jù),而不論其硬件、軟件平臺如何。使用XML無須事先協(xié)調(diào),它的自描述特性使得對于企業(yè)內(nèi)部網(wǎng)和B2B應(yīng)用的解決方案是一種有效的機(jī)制。 起初XML的類型說明是用DTD( Document Type Definition)文檔進(jìn)行的, DTD最大的優(yōu)點就是簡練。 缺點: DTD 文檔本身不是XML,需要另外一套語法

9、, 無法從原有類型定義新的類型,擴(kuò)展性差。 它不支持命名空間, DTD只能是一個過渡性質(zhì)的工具。,9,W3C在1999年2月發(fā)布了(XML Schema Definition) XSD. XSD協(xié)議提供了一種使用XML語言來定義數(shù)據(jù)類型的方法. XSD是一種特殊的XML,也是XML 的一種應(yīng)用,將XML的DTD類型定義重新按照XML語言的規(guī)范來定義。 優(yōu)點: XSD本身也是XML,應(yīng)用程序可以以統(tǒng)一的方式來處理、解析它。只需要一套解析器. 它可以為所有的環(huán)境所理解,并在它和環(huán)境語言中建立類型映射。能在異構(gòu)的環(huán)境下順利實現(xiàn)數(shù)據(jù)交換 XSD有命名空間,給企業(yè)應(yīng)用在Internet 上發(fā)布提供了保障

10、。 使用XSD可以定義任意復(fù)雜的數(shù)據(jù)類型,足以涵蓋主流開發(fā)語言如C所能表達(dá)的數(shù)據(jù)類型,而且可以對現(xiàn)有的類型進(jìn)行繼承和擴(kuò)展, 定義新的類型. 缺點: 篇幅較長,有效載荷低. 帶寬的擴(kuò)展 類型定義文件使用的頻率, 唯一的弱點也可忽略不計。使用XSD可以擴(kuò)展。,10,1.4 Web 服務(wù),2000年5月,在Microsoft,IBM,Ariba等公司的推薦下,SOAP(Simple Object Access Protocol)成為萬維網(wǎng)協(xié)會的工作草案。 SOAP的最終目的是在異構(gòu)環(huán)境下的應(yīng)用程序之間實現(xiàn)通訊。 沒有發(fā)明任何新技術(shù)的技術(shù). (新技術(shù)導(dǎo)致的不兼容性.) SOAP=XML+HTTP. 借

11、助于XSD來表達(dá)數(shù)據(jù)類型, 使用XML文檔來封裝數(shù)據(jù)和遠(yuǎn)程調(diào)用(RPC). SOAP 明確地規(guī)定了對RPC的調(diào)用方式,RPC的請求和響應(yīng)都用XML語言包裝在SOAP文檔中。 推薦使用HTTP協(xié)議來傳輸數(shù)據(jù)。 通訊雙方只要能解析XML文檔、支持HTTP協(xié)議即可以實現(xiàn)雙方的數(shù)據(jù)交換、遠(yuǎn)程調(diào)用。 缺點: 性能較低. DCOM或CORBA可以順利地甚至效率更高地實現(xiàn)RPC,但是SOAP 的意義在于其統(tǒng)一性。,11,WSDL是一種基于XML的Web服務(wù)描述語言。WSDL文檔是對一個Web服務(wù)的詳細(xì)且準(zhǔn)確的說明。包括接口所使用的數(shù)據(jù)類型,輸入輸出參數(shù),實現(xiàn)此接口的端口,協(xié)議, 服務(wù)器主機(jī)地址等等。 WSD

12、L是一個為眾多廠商支持的標(biāo)準(zhǔn)。只要客戶能解析XML文檔,就可以理解用WSDL語言描述的遠(yuǎn)程對象的接口。從而可以正確地調(diào)用服務(wù)。(使用SOAP) COM 和CORBA 都使用IDL來進(jìn)行接口描述。雖然有多種語言支持IDL,但是不幸的是DCOM和CORBA的IDL是不兼容的。這也是阻礙他們之間的互操作的原因之一。,12,1.5 Java J2EE,核心概念Java 虛擬機(jī) JDBC 數(shù)據(jù)庫 EJB 服務(wù)器方組件的標(biāo)準(zhǔn)。 Java Servlet Web 應(yīng)用服務(wù)器端對象 JSP 動態(tài)Web頁面 JMS Java Message Services消息隊列 Java API Java Mail 基于J

13、ava電子郵件 JNDI Java Naming and Directory Interface 訪問任何類型的目錄。 JAXP Java API for XML Parsing WebLogic BEA Websphere Eclipse IBM JBuilder Borland,13,1.6 .NET,.NET 框架是一種新的計算平臺,它簡化了在高度分布式 Internet 環(huán)境中的應(yīng)用程序開發(fā)。.NET 框架旨在實現(xiàn)下列目標(biāo): 提供一個一致的面向?qū)ο蟮木幊汰h(huán)境,而無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在 Internet 上分布,或者是在遠(yuǎn)程執(zhí)行的. .NET 框架具有兩個主要

14、組件: 公共語言運(yùn)行庫。公共語言運(yùn)行庫是 .NET 框架的基礎(chǔ)。我們可以將運(yùn)行庫看作一個在執(zhí)行時管理代碼的代理,它提供核心服務(wù)(如內(nèi)存管理、線程管理和遠(yuǎn)程處理),而且還強(qiáng)制實施嚴(yán)格的類型安全以及可確保安全性和可靠性的其他形式的代碼準(zhǔn)確性。 .NET類庫. 它是一個綜合性的面向?qū)ο蟮目芍赜妙愋图?,我們可以使用它開發(fā)包含從傳統(tǒng)的命令行或圖形用戶界面 (GUI) 應(yīng)用程序到基于 ASP.NET 所提供的最新創(chuàng)新的應(yīng)用程序(如 Web 窗體和 XML Web services)在內(nèi)的應(yīng)用程序。 Windows上的MSJAVA虛擬機(jī).,14,1.7 消息隊列,消息隊列是由System V引入的進(jìn)程間通

15、訊(IPC)的一種機(jī)制,在1993年由IEEE在標(biāo)準(zhǔn)IEEE Std 1003.1中進(jìn)行了標(biāo)準(zhǔn)化而成為POSIX標(biāo)準(zhǔn)的一部分。POSIX消息隊列在單機(jī)范圍內(nèi)已成為通用的通訊標(biāo)準(zhǔn)。 在Windows操作系統(tǒng)下,微軟把消息隊列擴(kuò)展到網(wǎng)絡(luò)上,稱為MSMQ(Microsoft Message Queue)。MSMQ由一個獨立的服務(wù)器來管理。它提供了一個完整的通訊平臺,使得具有一定權(quán)限的,能夠訪問服務(wù)器的客戶可以訪問平臺上的隊列,從而在網(wǎng)絡(luò)上實現(xiàn)數(shù)據(jù)通訊。 MSMQ有一組基于COM的API,同時有實現(xiàn)MSMQ的COM對象:MSMQ和Windows操作系統(tǒng)以及Windows平臺下的DCOM有密切的聯(lián)系。M

16、SMQ對象模型包括九個對象。MSMQQueue MSMQMessage MSMQQueueInfo 等。 微軟對分布式消息隊列的擴(kuò)充由于受限于Windows操作系統(tǒng),很多功能要通過DCOM來實現(xiàn),因此在其它系統(tǒng)上擴(kuò)展性和交互性受到很大約束。 其他的消息隊列如 IBM MQSeries等.,15,1.8 目錄服務(wù),關(guān)系數(shù)據(jù)庫. 優(yōu)缺點. 當(dāng)對速度的要求很高時,當(dāng)數(shù)據(jù)結(jié)構(gòu)呈樹狀時等等。目錄服務(wù)在速度,冗余和協(xié)議的標(biāo)準(zhǔn)化幾個方面相比關(guān)系數(shù)據(jù)而言具有相當(dāng)?shù)膬?yōu)勢。 在目錄服務(wù)的框架下,數(shù)據(jù)呈樹狀分布。每一個節(jié)點稱之為一個對象,每個對象都必須有其獨一無二的名稱 “識別名”(Distinguished Na

17、me,簡稱dn)。LDAP樹中的任何對象由樹中它上面的對象的單一屬性加上它自己的一個附加屬性組成。這些獨立部分稱為相對識別名(Relative Distinguished Name,簡稱為rdn) 目錄服務(wù)在處理搜索時速度非??臁KM(jìn)行了相當(dāng)?shù)膬?yōu)化來處理網(wǎng)絡(luò)的快速查詢。 1988年,國際標(biāo)準(zhǔn)化組織(ISO,International Standards Organization)和國際電信聯(lián)盟(ITU, International Telecommunications Union)聯(lián)合創(chuàng)建了目錄信息格式標(biāo)準(zhǔn)和目錄訪問協(xié)議X.500。此標(biāo)準(zhǔn)定義在OSI協(xié)議棧上, X.500未能完全實現(xiàn) 1994

18、年,密歇根大學(xué)開發(fā)了LDAP(Lightweight Directory Access Protocol,輕型目錄訪問協(xié)議),它建立在TCP/IP 之上,使用tcp或udp協(xié)議的389號端口。LDAP迅速地被廣泛采用。,16,2 COM,1.COM歷史: 1。 VBX 1991年 推出 可重用組件 缺陷 限于16位 不能用于32位環(huán)境 2。 OLE1.0 1991年 處理復(fù)合文件 以文本為中心技術(shù)上以DDE的方式實現(xiàn)建立在消息機(jī)制上,效率低,不穩(wěn)定 3。OLE2.0 1993年 采用了COM規(guī)范,不再局限于復(fù)合文檔。包括:COM 自動化 結(jié)構(gòu)化存儲 剪貼板 嵌入與鏈接等 4。ActiveX 1996年 OLE文檔在網(wǎng)絡(luò)上的擴(kuò)展 提供了一些新的服務(wù)。 5。COM Windows DNA(配置方

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論