軟件設(shè)計與體系結(jié)構(gòu)秦航11_第1頁
軟件設(shè)計與體系結(jié)構(gòu)秦航11_第2頁
軟件設(shè)計與體系結(jié)構(gòu)秦航11_第3頁
軟件設(shè)計與體系結(jié)構(gòu)秦航11_第4頁
軟件設(shè)計與體系結(jié)構(gòu)秦航11_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、清華大學(xué)出版社1清華大學(xué)出版社2內(nèi)容提要內(nèi)容提要p 11.1EJB分步構(gòu)件框架分步構(gòu)件框架 11.1.1 EJB技術(shù)技術(shù) 11.1.2 EJB的規(guī)范介紹的規(guī)范介紹 11.1.3 EJB的體系結(jié)構(gòu)的體系結(jié)構(gòu)11.2 DCOM分布構(gòu)件框架分布構(gòu)件框架l11.2.1 DCOM的使用的使用l11.2.2 DCOM的特點的特點l11.2.3 DCOM的靈活配置與擴展機制的靈活配置與擴展機制 11.2.4 在應(yīng)用間共享連接管理在應(yīng)用間共享連接管理 11.2.5 DCOM的安全性設(shè)置的安全性設(shè)置清華大學(xué)出版社311.3COBRA分布構(gòu)件框架分布構(gòu)件框架 11.3.1 COBRA基本原理基本原理 11.3.2

2、 CORBA體系結(jié)構(gòu)體系結(jié)構(gòu) 11.3.3 CORBA規(guī)范規(guī)范 11.3.4 CORBA產(chǎn)品概述產(chǎn)品概述 11.3.5 CORBA為我們帶來什么為我們帶來什么 11.3.6 未解決的問題未解決的問題11.4本章小結(jié)本章小結(jié) 在互聯(lián)網(wǎng)時代,分布式應(yīng)用越來越普遍與重要,如何高在互聯(lián)網(wǎng)時代,分布式應(yīng)用越來越普遍與重要,如何高效地開發(fā)這類系統(tǒng)成為我們必須應(yīng)對的課題。為了將構(gòu)件效地開發(fā)這類系統(tǒng)成為我們必須應(yīng)對的課題。為了將構(gòu)件思想應(yīng)用于分布式系統(tǒng)的開發(fā),業(yè)界提出了一些基于分布思想應(yīng)用于分布式系統(tǒng)的開發(fā),業(yè)界提出了一些基于分布構(gòu)件的解決方案。按照這些方案,整個分布式系統(tǒng)的體系構(gòu)件的解決方案。按照這些方案,

3、整個分布式系統(tǒng)的體系結(jié)構(gòu)大致如圖結(jié)構(gòu)大致如圖11-1所示。所示。圖圖11-1 基于分布構(gòu)件的系統(tǒng)體系結(jié)構(gòu)基于分布構(gòu)件的系統(tǒng)體系結(jié)構(gòu) 分布構(gòu)件與分布構(gòu)件框架相互之間緊密配合,分布構(gòu)件與分布構(gòu)件框架相互之間緊密配合,在上述體系結(jié)構(gòu)中占據(jù)主體地位。描述了分布構(gòu)在上述體系結(jié)構(gòu)中占據(jù)主體地位。描述了分布構(gòu)件框架,實際上也就說清楚了它與分布構(gòu)件之間件框架,實際上也就說清楚了它與分布構(gòu)件之間的接口,說清楚了分布構(gòu)件的外在特征。的接口,說清楚了分布構(gòu)件的外在特征。 對于上述體系結(jié)構(gòu),工業(yè)界有幾個主要的實現(xiàn)對于上述體系結(jié)構(gòu),工業(yè)界有幾個主要的實現(xiàn)方案,它們分別是由方案,它們分別是由SUN公司(已被公司(已被Or

4、acle收收購)主導(dǎo)提出的購)主導(dǎo)提出的EJB分布構(gòu)件框架、由微軟公司分布構(gòu)件框架、由微軟公司提出的提出的DCOM分布構(gòu)件框架和由分布構(gòu)件框架和由OMG組織提出組織提出的的CORBA分布構(gòu)件框架,本章將對它們分別進分布構(gòu)件框架,本章將對它們分別進行系統(tǒng)介紹。行系統(tǒng)介紹。11.1 EJB分布構(gòu)件框架分布構(gòu)件框架 11.1.1 EJB技術(shù)技術(shù) EJB規(guī)范是規(guī)范是SUN公司于公司于1997年年12月發(fā)布的月發(fā)布的JavaBean構(gòu)件模型。一個構(gòu)件模型。一個EJB是特定的在服務(wù)是特定的在服務(wù)器上運行的器上運行的JavaBean,并且,并且EJB能在可視化的能在可視化的工具下裝配成新的應(yīng)用。工具下裝配成

5、新的應(yīng)用。EJB應(yīng)用程序只能用應(yīng)用程序只能用Java語言編寫,且必須使用語言編寫,且必須使用EJB API。編寫良。編寫良好的好的EJB應(yīng)用程序無須修改任何源代碼就可以在應(yīng)用程序無須修改任何源代碼就可以在J2EE認(rèn)證的應(yīng)用服務(wù)器之間移植和互操作。認(rèn)證的應(yīng)用服務(wù)器之間移植和互操作。 EJB是一種基于構(gòu)件的開發(fā)模型,它是是一種基于構(gòu)件的開發(fā)模型,它是Java服務(wù)器端服務(wù)框架的規(guī)范。服務(wù)器端服務(wù)框架的規(guī)范。EJB詳細地定義了一詳細地定義了一個可以方便部署個可以方便部署Java構(gòu)件的服務(wù)框架模型,用于構(gòu)件的服務(wù)框架模型,用于創(chuàng)建可伸縮、多層次、跨平臺、分布式的應(yīng)用,創(chuàng)建可伸縮、多層次、跨平臺、分布式的

6、應(yīng)用,并可創(chuàng)建具有動態(tài)擴展性的服務(wù)器端的應(yīng)用。并可創(chuàng)建具有動態(tài)擴展性的服務(wù)器端的應(yīng)用。 清華大學(xué)出版社711.1.2EJB的規(guī)范介紹的規(guī)范介紹圖圖11-2 EJB容器示意圖容器示意圖清華大學(xué)出版社8p EJB編程模塊向編程模塊向bean開發(fā)人員和開發(fā)人員和EJB服務(wù)器供應(yīng)服務(wù)器供應(yīng)商提供了一組契約,這組契約,約定了開發(fā)的公共平臺。商提供了一組契約,這組契約,約定了開發(fā)的公共平臺。這些契約的目標(biāo)是在支持一組豐富功能性的同時能夠確這些契約的目標(biāo)是在支持一組豐富功能性的同時能夠確保供應(yīng)商之間的可移植性。保供應(yīng)商之間的可移植性。p 容器不允許客戶機應(yīng)用程序直接訪問容器不允許客戶機應(yīng)用程序直接訪問Ent

7、erprise Bean。當(dāng)客戶機應(yīng)用程序調(diào)用。當(dāng)客戶機應(yīng)用程序調(diào)用Enterprise Bean上上的遠程方法時,容器首先攔截調(diào)用,以確保持續(xù)、事務(wù)的遠程方法時,容器首先攔截調(diào)用,以確保持續(xù)、事務(wù)和安全性都正確應(yīng)用于客戶機對和安全性都正確應(yīng)用于客戶機對bean執(zhí)行的每一個操執(zhí)行的每一個操作。容器自動為作。容器自動為bean管理安全性、事務(wù)和持續(xù),于是管理安全性、事務(wù)和持續(xù),于是bean開發(fā)人員不必將這種類型的邏輯寫入開發(fā)人員不必將這種類型的邏輯寫入bean代碼本代碼本身中。身中。Enterprise Bean開發(fā)人員可以將精力集中于開發(fā)人員可以將精力集中于封裝商業(yè)規(guī)則,而容器處理其他一切。封

8、裝商業(yè)規(guī)則,而容器處理其他一切。清華大學(xué)出版社9p Enterprise Bean依賴容器來獲取它的依賴容器來獲取它的需求。如果需求。如果Enterprise Bean需要訪問需要訪問JDBC連接或另一個連接或另一個Enterprise Bean,那么它需要,那么它需要利用容器來完成此項操作。如果利用容器來完成此項操作。如果Enterprise Bean需要訪問調(diào)用者的身份、獲取它自身的引需要訪問調(diào)用者的身份、獲取它自身的引用或訪問特性,那么它需要利用容器來完成這些用或訪問特性,那么它需要利用容器來完成這些操作。操作。Enterprise Bean通過以下三種機制之通過以下三種機制之一與容器交

9、互:一與容器交互:p (1)回調(diào)方法、)回調(diào)方法、p (2)EJBContext接口或接口或p (3)JNDI清華大學(xué)出版社1011.1.3EJB的體系結(jié)構(gòu)的體系結(jié)構(gòu)p1. EJB的軟構(gòu)件模型的軟構(gòu)件模型p 軟構(gòu)件模型的思想,是創(chuàng)建可重用的構(gòu)件并將其組合軟構(gòu)件模型的思想,是創(chuàng)建可重用的構(gòu)件并將其組合到容器中,以得到新的應(yīng)用系統(tǒng)。構(gòu)件模型定義了構(gòu)件的到容器中,以得到新的應(yīng)用系統(tǒng)。構(gòu)件模型定義了構(gòu)件的基本體系結(jié)構(gòu)、構(gòu)件界面的結(jié)構(gòu)與其他構(gòu)件及容器相互作基本體系結(jié)構(gòu)、構(gòu)件界面的結(jié)構(gòu)與其他構(gòu)件及容器相互作用的機制等。利用構(gòu)件模型規(guī)范說明,構(gòu)件開發(fā)人員開發(fā)用的機制等。利用構(gòu)件模型規(guī)范說明,構(gòu)件開發(fā)人員開發(fā)

10、那些實現(xiàn)了應(yīng)用系統(tǒng)邏輯的構(gòu)件,而應(yīng)用系統(tǒng)開發(fā)人員則那些實現(xiàn)了應(yīng)用系統(tǒng)邏輯的構(gòu)件,而應(yīng)用系統(tǒng)開發(fā)人員則將這些預(yù)先開發(fā)好的構(gòu)件組合成應(yīng)用系統(tǒng);這些應(yīng)用系統(tǒng)將這些預(yù)先開發(fā)好的構(gòu)件組合成應(yīng)用系統(tǒng);這些應(yīng)用系統(tǒng)也可以作為新的構(gòu)件。軟構(gòu)件模型思想已經(jīng)在軟件開發(fā)界也可以作為新的構(gòu)件。軟構(gòu)件模型思想已經(jīng)在軟件開發(fā)界迅速流行,因為它可以達到以下這些目的:重用、高層開迅速流行,因為它可以達到以下這些目的:重用、高層開發(fā)、通過工具進行自動化開發(fā)、簡化開發(fā)過程等。發(fā)、通過工具進行自動化開發(fā)、簡化開發(fā)過程等。JavaBeans、EJB、COM/DCOM等都是軟構(gòu)件模型等都是軟構(gòu)件模型的例子。的例子。清華大學(xué)出版社111

11、4.2云計算服務(wù)模型云計算服務(wù)模型有兩種類型的軟構(gòu)件模型:有兩種類型的軟構(gòu)件模型:l客戶端構(gòu)件模型l服務(wù)器端構(gòu)件模型。 圖圖11-3 EJB構(gòu)建模型構(gòu)建模型清華大學(xué)出版社13 EJB構(gòu)件與構(gòu)件與Container之間有統(tǒng)一的之間有統(tǒng)一的界面,每一個界面,每一個EJB構(gòu)件都可以運行在所有構(gòu)件都可以運行在所有的運行環(huán)境中。在的運行環(huán)境中。在EJB構(gòu)件模型中有兩種構(gòu)件模型中有兩種類型的類型的bean:session bean和和entity bean。這兩種類型的。這兩種類型的EJB代表了兩種不代表了兩種不同類型的事務(wù)邏輯的抽象。同類型的事務(wù)邏輯的抽象。3.EJB的體系結(jié)構(gòu)的體系結(jié)構(gòu) EJB的上層分

12、布式應(yīng)用程序是基于對象組件模型的,的上層分布式應(yīng)用程序是基于對象組件模型的,低層的事務(wù)服務(wù)用了低層的事務(wù)服務(wù)用了API技術(shù)。技術(shù)。EJB技術(shù)簡化了用技術(shù)簡化了用Java語言編寫的企業(yè)應(yīng)用系統(tǒng)的開發(fā)、配置與執(zhí)行。語言編寫的企業(yè)應(yīng)用系統(tǒng)的開發(fā)、配置與執(zhí)行。EJB的的體系結(jié)構(gòu)的規(guī)范由體系結(jié)構(gòu)的規(guī)范由Sun Microsystems公司制定。公司制定。EJB技術(shù)定義了一組可重用的組件:技術(shù)定義了一組可重用的組件:Enterprise Bean。你可以利用這些組件像搭積木一樣地建立你的。你可以利用這些組件像搭積木一樣地建立你的分布式應(yīng)用程序。當(dāng)你把代碼寫好之后,這些組件就被分布式應(yīng)用程序。當(dāng)你把代碼寫好

13、之后,這些組件就被組合到特定的文件中去。每個文件有一個或多個組合到特定的文件中去。每個文件有一個或多個Enterprise Beans,再加上一些配置參數(shù)。最后,這,再加上一些配置參數(shù)。最后,這些些Enterprise Beans被配置到一個裝有被配置到一個裝有EJB容器的平容器的平臺上??蛻裟軌蛲ㄟ^這些臺上??蛻裟軌蛲ㄟ^這些beans的的home接口定位到某接口定位到某個個beans,并產(chǎn)生這個,并產(chǎn)生這個bean的一個實例。這樣,客戶的一個實例。這樣,客戶就能夠調(diào)用就能夠調(diào)用Beans的應(yīng)用方法與遠程接口。的應(yīng)用方法與遠程接口。清華大學(xué)出版社15p 通常來說,通常來說,EJB容器掌握了以下

14、容器掌握了以下的系統(tǒng)級分配:的系統(tǒng)級分配:p (1)Security-配置描述器(配置描述器(The Deployment descriptor)。)。 p ( 2 )Remote Connectivity-容器。容器。 p ( 3 )Life Cycle management-客戶??蛻?。 p ( 4 )Transaction management配配置描述器。置描述器。 清華大學(xué)出版社16p這六個角色分別是這六個角色分別是:p (1)Enterprise Bean Provider:EJB組件開發(fā)者。組件開發(fā)者。p (2)Application Assembler:應(yīng)用組:應(yīng)用組合者。合者

15、。p (3)Deployer:部署者。:部署者。p (4)EJB Server Provider:EJB服務(wù)服務(wù)器提供者。器提供者。p (5)EJB Container Provider:EJB容器提供者。容器提供者。p (6)System Administrator:系統(tǒng)管:系統(tǒng)管理員。理員。4.EJB結(jié)構(gòu)中的角色結(jié)構(gòu)中的角色清華大學(xué)出版社1711.2DCOM分布構(gòu)件框架分布構(gòu)件框架p DCOM是一系列微軟的概念和與程是一系列微軟的概念和與程序接口,利用這個接口,客戶端程序?qū)ο笮蚪涌?,利用這個接口,客戶端程序?qū)ο竽軌蛘埱髞碜跃W(wǎng)絡(luò)中另一臺計算機上的服能夠請求來自網(wǎng)絡(luò)中另一臺計算機上的服務(wù)器程序

16、對象;務(wù)器程序?qū)ο?;DCOM基于組件對象模型基于組件對象模型COM,COM提供了一套允許同一臺計算提供了一套允許同一臺計算機上的客戶端與服務(wù)器之間進行通信的接機上的客戶端與服務(wù)器之間進行通信的接口???。清華大學(xué)出版社1811.2.1DCOM的使用的使用p DCOM是是COM的擴展,它支持不同的兩臺的擴展,它支持不同的兩臺機器上的組件間的通信,而且不論它們是運行在機器上的組件間的通信,而且不論它們是運行在局域網(wǎng)、廣域網(wǎng)、還是局域網(wǎng)、廣域網(wǎng)、還是Internet上。借助上。借助DCOM,應(yīng)用程序?qū)⒛軌蛉我膺M行空間分布。,應(yīng)用程序?qū)⒛軌蛉我膺M行空間分布。使用使用DCOM,應(yīng)用程序就可以在位置上達到分

17、,應(yīng)用程序就可以在位置上達到分布性,從而滿足客戶和應(yīng)用的需求。布性,從而滿足客戶和應(yīng)用的需求。p p 在提供一系列分布式范圍方面,在提供一系列分布式范圍方面,DCOM通通常與通用對象請求代理體系結(jié)構(gòu)(常與通用對象請求代理體系結(jié)構(gòu)(CORBA)相)相提并論。提并論。DCOM是微軟給程序和數(shù)據(jù)對象傳輸是微軟給程序和數(shù)據(jù)對象傳輸?shù)木W(wǎng)絡(luò)范圍的環(huán)境,的網(wǎng)絡(luò)范圍的環(huán)境,CORBA則是在對象管理組則是在對象管理組織(織(OMG)的幫助下,由信息技術(shù)行業(yè)的其他)的幫助下,由信息技術(shù)行業(yè)的其他商家提供贊助的。商家提供贊助的。清華大學(xué)出版社1911.2.2DCOM的特點的特點p(1)組件和復(fù)用)組件和復(fù)用p(2)

18、位置獨立性)位置獨立性p(3)語言無關(guān)性)語言無關(guān)性p(4)連接管理)連接管理p(5)可擴展性)可擴展性p(6)對稱的多進程處理()對稱的多進程處理(SMP)清華大學(xué)出版社2011.2.3DCOM的靈活配置與擴展機制的靈活配置與擴展機制p 當(dāng)負(fù)載增加時,即使買一臺最快的多當(dāng)負(fù)載增加時,即使買一臺最快的多處理機,它也有可能不能適應(yīng)需求。處理機,它也有可能不能適應(yīng)需求。DCOM的位置獨立性提供了一個簡單而低的位置獨立性提供了一個簡單而低成本的方法來提高擴展性,那就是將分布成本的方法來提高擴展性,那就是將分布性的組件放到其他的機器上。性的組件放到其他的機器上。p (1)一般組件的配置)一般組件的配置

19、p (2)關(guān)鍵組件的配置)關(guān)鍵組件的配置p (3)DCOM的擴展機制的擴展機制清華大學(xué)出版社2111.2.4在應(yīng)用間共享連接管理在應(yīng)用間共享連接管理p DCOM對每臺機器使用一個對每臺機器使用一個keep-alive消息。消息。即使一臺客戶機使用了某一臺服務(wù)器上的即使一臺客戶機使用了某一臺服務(wù)器上的100個組個組件,僅僅只要一條件,僅僅只要一條ping消息就能使所有這些客戶連消息就能使所有這些客戶連接保持活躍狀態(tài)。為了將所有的接保持活躍狀態(tài)。為了將所有的ping消息組合起來,消息組合起來,DCOM使用使用delta pinging機制來將這些機制來將這些ping消消息的數(shù)量最小化。對于這息的數(shù)

20、量最小化。對于這100個連接,它并不是發(fā)個連接,它并不是發(fā)送送100個客戶的標(biāo)識符,而是創(chuàng)造了一個可變標(biāo)識個客戶的標(biāo)識符,而是創(chuàng)造了一個可變標(biāo)識符來重復(fù)代表這符來重復(fù)代表這100個引用。當(dāng)引用集改變時,僅個引用。當(dāng)引用集改變時,僅僅只是兩套引用的相交部分被互相交換。最終,僅只是兩套引用的相交部分被互相交換。最終,DCOM將所有將所有ping消息轉(zhuǎn)化為正常消息。對于服務(wù)消息轉(zhuǎn)化為正常消息。對于服務(wù)器來說,當(dāng)某臺客戶機完全是空閑的時候,它才定器來說,當(dāng)某臺客戶機完全是空閑的時候,它才定時發(fā)送時發(fā)送ping消息(每隔兩分鐘一次)。消息(每隔兩分鐘一次)。清華大學(xué)出版社22p1. 優(yōu)化網(wǎng)絡(luò)的來回旋程優(yōu)

21、化網(wǎng)絡(luò)的來回旋程p2. 安全性安全性清華大學(xué)出版社2311.2.5DCOM的安全性設(shè)置的安全性設(shè)置p DCOM無須在客戶端和組件上進行任何專門為安全無須在客戶端和組件上進行任何專門為安全性而做的編碼和設(shè)計工作,就可以為分布式應(yīng)用系統(tǒng)提供性而做的編碼和設(shè)計工作,就可以為分布式應(yīng)用系統(tǒng)提供安全性保障。就像安全性保障。就像DCOM編程模型屏蔽了組件的位置一編程模型屏蔽了組件的位置一樣,它也屏蔽了組件的安全性需求。在無須考慮安全性的樣,它也屏蔽了組件的安全性需求。在無須考慮安全性的單機環(huán)境下工作的二進制代碼能夠在分布式環(huán)境下以一種單機環(huán)境下工作的二進制代碼能夠在分布式環(huán)境下以一種安全的方式工作。安全的

22、方式工作。DCOM通過讓開發(fā)者與管理員為每個通過讓開發(fā)者與管理員為每個組件設(shè)置安全性環(huán)境而使安全性透明。就像組件設(shè)置安全性環(huán)境而使安全性透明。就像Windows NT允許管理員為文件和目錄設(shè)置訪問控制列表一樣,允許管理員為文件和目錄設(shè)置訪問控制列表一樣,DCOM將組件的訪問控制列表存儲起來。這些列表清楚將組件的訪問控制列表存儲起來。這些列表清楚地指出了哪些用戶或用戶組有權(quán)訪問某一類的組件。使用地指出了哪些用戶或用戶組有權(quán)訪問某一類的組件。使用DCOM的設(shè)置工具、或者在編程中使用的設(shè)置工具、或者在編程中使用Windows NT的的registry,以及,以及Win32的安全函數(shù)可以很簡單地設(shè)置這

23、的安全函數(shù)可以很簡單地設(shè)置這些列表。些列表。清華大學(xué)出版社24p1. 對安全性的編程控制對安全性的編程控制p2. Internet上的安全性上的安全性p3. 負(fù)載平衡負(fù)載平衡p (1)靜態(tài)負(fù)載平衡)靜態(tài)負(fù)載平衡p (2)動態(tài)負(fù)載平衡)動態(tài)負(fù)載平衡p4. 容錯性容錯性清華大學(xué)出版社2511.3COBRA分布構(gòu)件框架分布構(gòu)件框架p11.3.1 COBRA基本原理基本原理p 對象管理組織對象管理組織OMG(Object Management Group)負(fù)責(zé)制訂與發(fā)布)負(fù)責(zé)制訂與發(fā)布CORBA規(guī)范。由規(guī)范。由OMG發(fā)布的對象管理體系結(jié)發(fā)布的對象管理體系結(jié)構(gòu)構(gòu)OMA(Object Management

24、 Architecture)是包括)是包括CORBA規(guī)范在內(nèi)的所規(guī)范在內(nèi)的所有有OMG規(guī)范的概念模型基礎(chǔ)。規(guī)范的概念模型基礎(chǔ)。清華大學(xué)出版社26p1. 對象管理組織對象管理組織p2. 對象管理體系結(jié)構(gòu)對象管理體系結(jié)構(gòu)p3. 對象請求代理對象請求代理p4. 對象服務(wù)對象服務(wù)p5. 公共設(shè)施公共設(shè)施p6. 領(lǐng)域接口領(lǐng)域接口p7. 應(yīng)用程序接口應(yīng)用程序接口清華大學(xué)出版社2711.3.2CORBA體系結(jié)構(gòu)體系結(jié)構(gòu)p CORBA建立在建立在OMG的對象模型基礎(chǔ)之上,的對象模型基礎(chǔ)之上,主要有三個關(guān)鍵部分:接口定義語言主要有三個關(guān)鍵部分:接口定義語言IDL、對象、對象請求代理請求代理ORB和標(biāo)準(zhǔn)通信協(xié)議和

25、標(biāo)準(zhǔn)通信協(xié)議IIOP。p 1.OMG的對象模型的對象模型p 2.對象請求代理的結(jié)構(gòu)對象請求代理的結(jié)構(gòu)p 3.對象接口定義對象接口定義p 4.客戶程序發(fā)送請求客戶程序發(fā)送請求p 5.對象實現(xiàn)接收請求對象實現(xiàn)接收請求p 6.對象的可互操作性對象的可互操作性p 7.ORB域和橋接域和橋接p 8.GIOP、IIOP與與ESIOPp 9.CORBA對可互操作性的支持對可互操作性的支持清華大學(xué)出版社2811.3.3CORBA規(guī)范規(guī)范p OMG本身不生產(chǎn)任何軟件或?qū)崿F(xiàn)任本身不生產(chǎn)任何軟件或?qū)崿F(xiàn)任何規(guī)范,它只是將何規(guī)范,它只是將OMG成員的信息需求成員的信息需求(RFI)與建議需求()與建議需求(RFP)匯集

26、為規(guī)范。)匯集為規(guī)范。CORBA規(guī)范是一套開放式的規(guī)范,規(guī)范是一套開放式的規(guī)范, p OMG的成員或非成員公司均可免費的成員或非成員公司均可免費實現(xiàn)符合實現(xiàn)符合CORBA規(guī)范的規(guī)范的ORB產(chǎn)品。產(chǎn)品。清華大學(xué)出版社29p(1)1991年年12月正式發(fā)布月正式發(fā)布CORBA 1.1p(2)1995年年7月正式發(fā)布月正式發(fā)布CORBA 2.0p(3)2010年正式發(fā)布年正式發(fā)布CORBA 3.0清華大學(xué)出版社3011.3.4CORBA產(chǎn)品概述產(chǎn)品概述p 盡管盡管OMG不斷改進與完善不斷改進與完善CORBA規(guī)范,但每一版本保持了較好的向后兼容規(guī)范,但每一版本保持了較好的向后兼容性,因而性,因而COR

27、BA規(guī)范相當(dāng)成熟與穩(wěn)定,規(guī)范相當(dāng)成熟與穩(wěn)定,并且擁有大量產(chǎn)品,在企業(yè)計算與因特網(wǎng)并且擁有大量產(chǎn)品,在企業(yè)計算與因特網(wǎng)計算領(lǐng)域擁有龐大的市場?;谟嬎泐I(lǐng)域擁有龐大的市場?;贑ORBA的軟件適用于因特網(wǎng)應(yīng)用與企業(yè)計算,特的軟件適用于因特網(wǎng)應(yīng)用與企業(yè)計算,特殊版本的殊版本的CORBA還可運行在實時系統(tǒng)、還可運行在實時系統(tǒng)、嵌入式系統(tǒng)與容錯系統(tǒng)。嵌入式系統(tǒng)與容錯系統(tǒng)。清華大學(xué)出版社311.商品化商品化CORBA產(chǎn)品產(chǎn)品p(1)Orbixp(2)VisiBrokerp(3)WebLogicp(4)Component Brokerp(5)其他)其他清華大學(xué)出版社32部分商品化部分商品化CORBA產(chǎn)品及其

28、站點產(chǎn)品及其站點pIONA Orbixhttp:/Inprise VisiBrokerhttp:/BEA Sysetms WebLogichttp:/IBM Component Brokerhttp:/Critical Path InJoin BROKERhttp:/GemStone GemORBhttp:/Objective Interface Systems ORBexpresshttp:/Bionic Buffalo Tatankahttp:/Silverstream Jbrokerhttp:/Vertel e*ORBhttp:/清華大學(xué)出版社332.免費免費CORBA產(chǎn)品產(chǎn)品p(1)O

29、mniORBp(2)TAOp(3)ORBit清華大學(xué)出版社34部分免費部分免費CORBA產(chǎn)品及其站點產(chǎn)品及其站點pAT&T Laboratory omniORBhttp:/Washington University TAO/schmidtObject-Oriented Concepts ORBacushttp:/ObjectSpace Voyager ORB Prohttp:/RHAD Labs ORBithttp:/ Objects Group JavaORBhttp:/MICOADABrokerhttp

30、:/清華大學(xué)出版社3511.3.5CORBA為我們帶來什么為我們帶來什么p OMG致力于解決分布式應(yīng)用程序的復(fù)雜致力于解決分布式應(yīng)用程序的復(fù)雜性與高成本問題。性與高成本問題。CORBA順應(yīng)軟件技術(shù)發(fā)展的順應(yīng)軟件技術(shù)發(fā)展的潮流,成功地融合了兩種技術(shù):一是基于消息傳潮流,成功地融合了兩種技術(shù):一是基于消息傳遞的分布式客戶機遞的分布式客戶機/服務(wù)器技術(shù),一是面向?qū)ο蠓?wù)器技術(shù),一是面向?qū)ο筌浖_發(fā)技術(shù)。軟件開發(fā)技術(shù)。CORBA采用面向?qū)ο蠓椒▌?chuàng)建采用面向?qū)ο蠓椒▌?chuàng)建在應(yīng)用程序之間可重用與可共享的軟件組件,每在應(yīng)用程序之間可重用與可共享的軟件組件,每一個對象對外隱藏了它內(nèi)部工作的細節(jié),并提供一個對象對外隱藏了它內(nèi)部工作的細節(jié),并提供一個定義良好的外部接口,從而降低應(yīng)用程序的一個定義良好的外部接口,從而降低應(yīng)用程序的復(fù)雜性。一旦實現(xiàn)并測試一個對象后,它可以在復(fù)雜性。一旦實現(xiàn)并測試一個對象后,它可以在新應(yīng)用環(huán)境中多次被重用,因而減少了

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論