目前,對這幾種主流技術,還很難一下分出高低,根據這一情況,因此有些專家干脆提出研究立項,對這些技術進行系統分析比較,了解其優缺點,適合范圍,和應用限制,研究其發展潛力和方向,并探討能否組合和互補。對我們來說,較聰明的策略,也是暫緩選擇決定,允許多種技術一段時間內百花齊放,先以吃透這些技術為主;另外,也應看到,分布對象中間件,牽涉系統底層技術較多,直接參與這類技術產品的開發,難度和風險都較大,因此除非有充分的技術準備,不要輕易介入,可先把精力放在加值服務和開發。
從應用角度看,企業應用集成(EAI)和B2B集成,很有可能要求將不同技術平臺的應用連接起來,構成聯邦式結構(Federated Architecture),實現信息和應用服務共享,這就要求異構的技術平臺,具有互易操作性,我們的研究方向,似乎也應偏重如何解決互易操作和集成技術,對此,有家公司的模式,值得參考,這是一家專業的中間件公司,名叫OMEX(www.omex.ch),它開發了三樣東西:(1)iF - eIntegration Framework,提供多種中間件的集成框架,包括結構指南、IDL標準接口、公共服務和工具支持;(2)Nway - Middleware Integration Gateway,這是一類CORBA 網關,用于連接其它中間件,包括一些主流中間件產品,生成 IDL基的接口和橋(如COM-CORBA);(3)Toolbox, 提供一組100% 基于 EJB 和 CORBA 標準的加值工具、服務和構件,包括提供信息庫(界面庫、服務庫),和生成器 (CORBA 測試床、CORBA相容的 activeX 構件、映射 CORBA界面到EJB界面、Nway中間件集成網關),可見其主要開發方向,集中在解決中間件的集成和互易操作上。
為解決中間件在異構平臺的互易操作,需要開發相應的搭橋產品,這實際上也是一類中間件,從客戶/服務器結構講,一個橋是一個軟件過程,允許處在一個中間件域的客戶端,向處于另一中間件域的服務器,請求服務和接受回答,橋可具有幾類性質:單向或雙向,靜態或動態,商業產品或定做的,設置位置可以是客戶端或服務器端,或者第三端的中間端機器,對CORBA橋,則還有ORB中性或特定某一類ORB的,下面列舉一些典型的中間件橋產品:
CORBA/DCOM橋:OMG 對此有專門的互易規定,橋的位置也與通信協議有關,如DCOM客戶對CORBA服務器,放在客戶端,采用IIOP協議,CORBA客戶對DCOM服務器,也放客戶端,但采用Object RPC 通信,樣品產品有:Visual Edge 的ObjectBridge和 IONA 的OrbixCOMet, 兩者都是雙向動態的, IONA 還開發了一個運行在CORBA服務器端的COM/DCOM適配器,允許COM/DCOM客戶應用存取服務器。
Inprise Application ServerTM (IAS) 也提供了COM存取CORBA對象和EJB的能力。
DCE/CORBA 橋:典型的商業產品有 Inprise DCE-CORBA 橋,它的橋對像,介于中間,同時起CORBA服務器和DCE服務器客戶端的作用,該產品屬單向橋,且只能用 VisiBroker ORB。
DSTC 的DCE-CORBA橋,也是提供CORBA客戶存取DCE服務器,但它采用設立橋工廠(Bridge Factory)的方法,能按要求(On-demand) 生成所需要的靜態橋,這是介于靜態和動態橋之間的一種技術。Borland 公司在它的DCE開發環境 Entera中,也加進了DCE-CORBA橋,以擴展DCE應用的集成能力。
EJB/COM 橋:
Sun 公司發布了一個COM->;EJB橋,J2EE 客戶存取服務CAS COM 橋,允許微軟窗口應用,存取J2EE服務器上的EJB構件,它是一組COM對象,客戶應用可用COM Idispatch接口,通過RMI-IIOP協議,與服務器通信。
J-Integra 是一個雙向的Java/COM,能把ActiveX構件當作Java對象,或者反過來,有了它微軟平臺上的ASP就能與服務器上的EJB對話,Java應用服務器可與Windows NT上的COM對象對話,這自然也包括下列兩個橋的功能:Servlet-COM 橋和 VB-EJB 橋。
此類橋的另一特例,涉及數據庫存取,像JDBC/ODBC 橋,可允許Java 應用環境,存取微軟平臺的ODBC數據庫,典型產品有:Easysoft 的 JDBC-ODBC橋,它作為一個EJB構件。
EJB/CORBA 橋:iPlanetTM應用服務器,提供了EJB/CORBA 橋,允許前端EJB應用,通過RMI/IIOP 和IONA Orbix 2000,存取后端的CORBA對象和應用,如ORB初始化程序中設立單一類,就可適用多種ORB,而不需要再初試化。
OpenFusion& v2.0 企業集成服務,擴展了功能,同時對CORBA和J2EE提供支持,并設立兩個標準的橋,支持JMS,與IBM MQSeries 橋,下一步還要加XML信息類型,和JMS-SOAP 橋。
為了實現 EJB/CCM(CORBA 構件模型)間的雙向橋,就要設法實現CORBA IDL界面和Java界面的互相映射。
在BEA WebLogic EnterpriseTM 中,EJB和CORBA 也可以共存和互易操作。
Borland AppServer 4 (BAS4) 支持 EJB和 CORBA無縫的集成, 為此, 它采取了 6條途徑: (1) 用IIOP作統一的傳輸協議, 實際上新版的J2EE也明顯要求J2EE平臺供應商支持IIOP實現; (2) 支持CORBA 值類型(Object-by-Value); (3) Java-To-IDL映射; (4) 命名服務映射; (5) 事務處理映射; (6)安全服務映射; 以此, 達到了兩個中間件標準較高的集成和互易 ( 見www.customware.com)。
SOAP/CORBA橋:Biocorba-l 公司提供了一個 SOAP<->;CORBA 橋產品,以適合SOAP的廣泛應用。
文章來源于領測軟件測試網 http://www.kjueaiud.com/