1. 程式人生 > >三種分布式對象主流技術——COM、Java和COBRA

三種分布式對象主流技術——COM、Java和COBRA

接口 基本 現在 data 角度 很多 效率 並且 java平臺

既上一遍,看到還有一遍將關於 對象的, 分布式對象, 故摘抄入下:

目前國際上,分布式對象技術有三大流派——COBRA、COM/DCOM和Java。CORBA技術是最早出現的,1991年OMG頒布了COBRA 1.0標準,在當時來說做得非常漂亮;再有就是Microsoft的COM系列,從最初的COM發展成現在的DCOM,形成了Microsoft一套分布式對象的計算平臺;而Sun公司的Java平臺,在其最早推出的時候,只提供了遠程的方法調用,在當時並不能被稱為分布式對象計算,只是屬於網絡計算裏的一種,接著推出的JavaBean,也還不足以和上述兩大流派抗衡,而其目前的版本叫J2EE,推出了EJB,除了語言外還有組件的標準以及組件之間協同工作通訊的框架。於是,也就形成了目前的三大流派。

---- 應該說,這三者之中,COBRA標準是做的最漂亮的。COBRA標準主要分為3個層次:對象請求代理、公共對象服務和公共設施。最底層是對象請求代理ORB,規定了分布對象的定義(接口)和語言映射,實現對象間的通訊和互操作,是分布對象系統中的“軟總線”;在ORB之上定義了很多公共服務,可以提供諸如並發服務、名字服務、事務(交易)服務、安全服務等各種各樣的服務;最上層的公共設施則定義了組件框架,提供可直接為業務對象使用的服務,規定業務對象有效協作所需的協定規則。總之,CORBA的特點是大而全,互操作性和開放性非常好。目前CORBA的最新版本是2.3。CORBA 3.0也已基本完成,增加了有關Internet集成和QoS控制等內容。CORBA的缺點是龐大而復雜,並且技術和標準的更新相對較慢,COBRA規範從1.0升級到2.0所花的時間非常短,而再往上的版本的發布就相對十分緩慢了。

---- 相比之下,Java標準的制訂就快得多,Java是Sun公司自己定的,演變的很快。Java的優勢是純語言的,跨平臺性非常好。Java分布對象技術通常指遠程方法調用(RMI)和企業級JavaBean(EJB)。RMI提供了一個Java對象遠程調用另一Java對象的方法的能力,與傳統RPC類似,只能支持初級的分布對象互操作。Sun公司於是基於RMI,提出了EJB。基於Java服務器端組件模型,EJB框架提供了像遠程訪問、安全、交易、持久和生命期管理等多種支持分布對象計算的服務。目前,Java技術和CORBA技術有融合的趨勢。

---- COM技術是Microsoft獨家做的,是在Windows 3.1中最初為支持復合文檔而使用OLE技術上發展而來,經歷了OLE 2/COM、ActiveX、DCOM和COM+等幾個階段,目前COM+把消息通訊模塊MSMQ和解決關鍵業務的交易模塊MTS都加進去了,是分布對象計算的一個比較完整的平臺。Microsoft的COM平臺效率比較高,同時它有一系列相應的開發工具支持,應用開發相對簡單。但它有一個致命的弱點就是COM的跨平臺性較差,如何實現與第三方廠商的互操作性始終是它的一大問題。從分布對象技術發展的角度來看,大多數人認為COM競爭不過COBRA。

三種分布式對象主流技術——COM、Java和COBRA