1. 程式人生 > >CORBA規範和CORBA中介軟體

CORBA規範和CORBA中介軟體

    本篇部落格我們介紹一種流行的整合中介軟體:基於OMG的CORBA中介軟體以及CORBA規範。

一、OMG:物件管理組織,該組織釋出了最有影響的兩套規範,一個是UML統一建模語言,另一個就是CORBA規範。OMG的技術規範主要用來支援分散式、異構環境的軟體開發專案。這些規範覆蓋了從分析、設計到編碼、部署、執行和管理的整個軟體的開發過程。

二、OMA:物件體系結構,描述了一個基於CORBA的應用系統的基本結構與構成系統的構件的特性。其參考模型為:


    在上面的圖中我們可以看出,ORB類似於一條系統匯流排,為其提供互操作的基本支援,同時,我們把系統中的很多物件都劃分到不同的組中,根據這些物件的共性按照其基礎性分別抽象並標準化為物件服務、通用設計和領域介面。

三、ORB:物件請求代理,在上面的參考模型中所有的系統物件都會附著在一條類似系統匯流排的東西上,這就是OMA參考模型的核心,負責完成查詢請求的物件實現,讓物件實現準備好接收請求、傳遞構成請求的資料等完成遠端呼叫時底層通訊任務所需的全部機制。

ORB的體系結構如下:


   從上圖中可以看到ORB同樣採用了Stub/Skeleton結構開支援客戶端與分散式物件的互動,這種體系結構不僅提供了動態呼叫的方式,還支援用不同的程式設計語言實現來實現物件。其中ORB核心是ORB最核心的東西,負責請求的通訊設施,每一個ORB產品供應商都有一個自己特有的ORB核心。

四、CORBA的可互操作性:CORBA中介軟體最大的優勢就是對可互操作性具有良好的支援。CORBA支援可互操作性主要包括如下幾個層次:

    1、不同平臺與語言之間的可互操作性:CORBA對於這種互操作性的解決方法包括制定IDL標準及IDL到程式設計語言的對映。

    2、不同廠商ORB產品之間的可互操作性:在CORBA2.0版本中引入了GIOP和IIOP,實現了不同供應商的ORB產品之間的可互操作性。

    3、不同體型結構之間的可互操作性:一個CORBA物件可通過協議橋接操作一個DCOM物件。OMG通過引入了ESIOP來解決了這一問題。

    OMG物件管理組織提供了一系列的標準和規範,本篇中的CORBA規範就是其中的一個,我們根據這種規範來開發中間件,這就是我們今天提到的CORBA中介軟體,基於CORBA的體系結構就是上面提到了OMA,這種體系結構的核心就是ORB,下篇部落格我們介紹CORBA中介軟體的開發過程。