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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

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

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

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

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

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

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

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

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

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

12、L是一個為眾多廠商支持的標準。只要客戶能解析XML文檔,就可以理解用WSDL語言描述的遠程對象的接口。從而可以正確地調用服務。(使用SOAP) COM 和CORBA 都使用IDL來進行接口描述。雖然有多種語言支持IDL,但是不幸的是DCOM和CORBA的IDL是不兼容的。這也是阻礙他們之間的互操作的原因之一。,12,1.5 Java J2EE,核心概念Java 虛擬機 JDBC 數據庫 EJB 服務器方組件的標準。 Java Servlet Web 應用服務器端對象 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)境中的應用程序開發(fā)。.NET 框架旨在實現下列目標: 提供一個一致的面向對象的編程環(huán)境,而無論對象代碼是在本地存儲和執(zhí)行,還是在本地執(zhí)行但在 Internet 上分布,或者是在遠程執(zhí)行的. .NET 框架具有兩個主要

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

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

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

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

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

溫馨提示

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

評論

0/150

提交評論