1. 程式人生 > >J2EE、CORBA、DNA三種主流中介軟體平臺比較

J2EE、CORBA、DNA三種主流中介軟體平臺比較

 一、概述
  1.中介軟體的概念
  
  隨著計算機技術的飛速發展,各種各樣的應用軟體需要在各種平臺之間進行移植,或者一個平臺需要支援多種應用軟體和管理多種應用系統,軟、硬體平臺和應用系統之間需要可靠和高效的資料傳遞或轉換,使系統的協同性得以保證。這些,都需要一種構築於軟、硬體平臺之上,同時對更上層的應用軟體提供支援的軟體系統,而中介軟體正是在這個環境下應孕而生。
  
  由於中介軟體技術正處於發展過程之中,因此目前尚不能對它進行精確的定義。
  
  比較流行的定義是:中介軟體是一種獨立的系統軟體或服務程式,分散式應用軟體藉助這種軟體在不同的技術之間共享資源。中介軟體位於客戶機/伺服器的作業系統之上,管理計算資源和網路通訊。
  
  從中介軟體的定義可以看出,中介軟體是一類軟體,而非一種軟體;中介軟體不僅僅實現互連,還要實現應用之間的互操作;中介軟體是基於分散式處理的軟體,定義中特別強調了其網路通訊功能。
  
  2.中介軟體特點及優勢
  
  通常意義下,中介軟體應具有以下的一些特點:滿足大量應用的需要;運行於多種硬體和OS平臺;支援分散式計算,提供跨網路、硬體和OS平臺的透明性的應用或服務的互動功能;支援標準的協議;支援標準的介面。

feedom.net


  
  程式設計師通過呼叫中介軟體提供的大量API,實現異構環境的通訊,從而遮蔽異構系統中複雜的作業系統和網路協議。
  
  中介軟體提供客戶機與伺服器之間的連線服務,這些服務具有標準的程式介面和協議。針對不同的作業系統和硬體平臺,它們可以有符合介面和協議規範的多種實現。
  
  由於標準介面對於可移植性和標準協議對於互操作性的重要性,中介軟體已成為許多標準化工作的主要部分。對於應用軟體開發,中介軟體遠比作業系統和網路服務更為重要,中介軟體提供的程式介面定義了一個相對穩定的高層應用環境,不管底層的計算機硬體和系統軟體怎樣更新換代,只要將中介軟體升級更新,並保持中介軟體對外的介面定義不變,應用軟體幾乎不需任何修改,從而保護了企業在應用軟體開發和維護中的重大投資。
  
  中介軟體是一種獨立的系統軟體或服務程式,分散式應用軟體藉助這種軟體在不同的技術之間共享資源。中介軟體軟體管理著客戶端程式和資料庫或者早期應用軟體之間的通訊。
  
  中介軟體在分散式的客戶和服務之間扮演著承上啟下的角色,如事務管理、負載均衡以及基於Web的計算等。
  
  利用這些技術有助於減輕應用軟體開發者的負擔,使他們利用現有的硬體裝置、作業系統、網路、資料庫管理系統以及物件模型建立分散式應用軟體時更加得心應手。由於中介軟體能夠保護企業的投資,保證應用軟體的相對穩定,實現應用軟體的功能擴充套件;同時中介軟體產品在很大程度上簡化了一個由不同硬體構成的分散式處理環境的複雜性,所以它的出現正日益引起使用者的關注。

網管聯盟www.bitsCN.com


  
  世界著名的諮詢機構The Standish Group在一份研究報告中歸納了中介軟體的十大優越性:
  
  (1)應用開發:The Standish Group 分析了100個關鍵應用系統中的業務邏輯程式、應用邏輯程式及基礎程式所佔的比例;業務邏輯程式和應用邏輯程式僅佔總程式量的30%,而基礎程式佔了70%,使用傳統意義上的中介軟體一項就可以節省25%~60%的應用開發費用。如是以新一代的中介軟體系列產品來組合應用,同時配合以可複用的商務物件構件,則應用開發費用可節省至80%。
  
  (2)系統執行:沒有使用中介軟體的應用系統,其初期的資金及執行費用的投入要比同規模的使用中介軟體的應用系統多一倍。
  
  (3)開發週期:基礎軟體的開發是一件耗時的工作,若使用標準商業中介軟體則可縮短開發週期50%~75%。
  
  (4)減少專案開發風險:研究表明,沒有使用標準商業中介軟體的關鍵應用系統開發專案的失敗率高於90%。企業自己開發內建的基礎(中介軟體)軟體是得不償失的,專案總的開支至少要翻一倍,甚至會十幾倍。
  
  (5)合理運用資金:藉助標準的商業中介軟體,企業可以很容易地在現有或遺留系統之上或之外增加新的功能模組,並將它們與原有統無縫集合。依靠標準的中介軟體,可以將老的系統改頭換面成新潮的Internet/Intranet 應用系統。 中國網管聯盟www_bitscn_com


  
  (6)應用集合:依靠標準的中介軟體可以將現有的應用、新的應用和購買的商務構件融合在一起進行應用集合。
  
  (7)系統維護:需要一提的是,基礎(中介軟體)軟體的自我開發是要付出很高代價的,此外,每年維護自我開發的基礎(中介軟體)軟體的開支則需要當初開發費用的15%~25%,每年應用程式的維護開支也還需要當初專案總費用的10%~20%左右。而在一般情況下,購買標準商業中介軟體每年只需付出產品價格的15%~20%的維護費,當然,中介軟體產品的具體價格要依據產品購買數量及哪一家廠商而定。
  
  (8)質量:基於企業自我建造的基礎(中介軟體)軟體平臺上的應用系統,每增加一個新的模組,就要相應地在基礎(中介軟體)軟體之上進行改動。而標準的中介軟體在介面方面都是清晰和規範的。標準中介軟體的規範化模組可以有效地保證應用系統質量及減少新舊系統維護開支。
  (9)技術革新:企業對自我建造的基礎(中介軟體)軟體平臺的頻繁革新是極不容易實現的(不實際的)。而購買標準的商業中介軟體,則對技術的發展與變化可以放心,中介軟體廠商會責無旁貸地把握技術方向和進行技術革新。
  
  (10)增加產品吸引力:不同的商業中介軟體提供不同的功能模型,合理使用,可以讓你的應用更容易增添新的表現形式與新的服務專案。從另一個角度看,可靠的商業中介軟體也使得企業的應用系統更完善,更出眾。 中國網管聯盟www_bitscn_com
  
  具體地說,中介軟體遮蔽了低層作業系統的複雜性,使程式開發人員面對一個簡單而統一的開發環境,減少程式設計的複雜性,將注意力集中在自己的業務上,不必再為程式在不同系統軟體上的移植而重複工作,從而大大減少了技術上的負擔。
  
  中介軟體帶給應用系統的不只是開發的簡單、開發週期的縮短,也減少了系統的維護、執行和管理的工作量,還減少了計算機總體費用的投入。The Standish Group的調查報告顯示,由於採用了中介軟體技術,應用系統的總建設費用可以減少50%左右。在網路經濟大發展、電子商務大發展的今天,從中介軟體獲得利益的不只是IT廠商,IT使用者同樣是贏家,並且是更有把握的贏家。
  
  中介軟體作為新層次的基礎軟體,其重要作用是將不同時期、在不同作業系統上開發應用軟體整合起來,彼此像一個天衣無縫的整體協調工作,這是作業系統、資料庫管理系統本身做不了的。中介軟體的這一作用,在技術不斷髮展之後,使以往在應用軟體上的勞動成果仍然物有所用,節約了大量的人力、財力投入。
  
  3.中介軟體的應用領域與分類
  
  隨著計算機軟體技術的發展,中介軟體技術也已經日漸成熟,並且出現了不同層次、不同型別的中介軟體產品。按照IDC 的分類方法,中介軟體可分為六類。分別是資料訪問中介軟體、遠端過程呼叫中介軟體、訊息中介軟體、交易中介軟體、物件中介軟體等。

中國網管聯盟www.bitscn.com


  
  資料訪問中介軟體:是為了建立資料應用資源互操作的模式,對異構環境下的資料庫實現聯接或檔案系統實現聯接的中介軟體;
  
  遠端過程呼叫中介軟體:通過這種遠端過程呼叫機制,程式設計師編寫客戶方的應用,需要時可以呼叫位於遠端伺服器上的過程;
  
  訊息中介軟體:用來遮蔽掉各種平臺及協議之間的特性,進行相互通訊,實現應用程式之間的協同;
  
  交易中介軟體:是在分佈、異構環境下提供保證交易完整性和資料完整性的一種環境平臺;
  
  物件中介軟體:在分佈、異構的網路計算環境中,可以將各種分佈物件有機地結合在一起,完成系統的快速整合,實現物件重用。
  
  目前國內外有不少廠商都開發出自己的中介軟體產品,其中有全球最大的獨立中介軟體廠商BEA公司,還有像IBM、Oracl e和Microsoft、HP、Sun等大廠商也早已涉足電子商務中介軟體。
  
  面向物件的中介軟體是物件技術和分散式計算髮展的產物,業界普遍認為面向物件是今後中介軟體發展的主流方向,它提供一種通訊機制,透明地在異構的分佈計算環境中傳遞物件請求,而這些物件可以位於本地或者遠端機器。
  
  面向物件標準原本只有一個,即CORBA(公共物件請求代理體系結構),該標準由包括BEA、IBM、Oracle、Sun和Sybas e等公司在內的眾多廠商一起制定,從而形成了一個龐大的CORBA聯盟勢力。後來,Sun推出了企業級JavaBeans(EJB),用自己易使用的程式模型來對CORBA做出了改進。微軟COM(Component Object Model,元件物件模型)的出現,使面向物件中介軟體市場裡又多了一個標準,這樣,面向物件中介軟體產品實際上形成了兩大標準,一是微軟的COM,一是JavaBeans。 中國網管聯盟www.bitscn.com
  
  從巨集觀上看,中介軟體可以分為3大類:
  
  資料類:用於資料的存取、利用和增值,此類中介軟體用於構建以資料為中心的應用。
  
  處理類:把分佈在網路結點上的各個應用或處理連線在一起,形成一個統一的分散式應用。
  
  分散式構件類:支援構件式應用,未來應用的發展方向,目前競爭激烈。

二、中介軟體的技術規範
  1.DCE體系
  
  DCE是Distrbuted Computing Environment 分散式計算環境的縮寫,它由Open Software Fondation 制定,現在這個組織被稱為Open Group。
  
  DCE由多個共同在一起工作的元件組成,它們是:遠端過程呼叫(RPC)、本地和全域性目錄服務(CDS和GDS)、安全服務、DCE執行緒、分散式時鐘服務(DTS)和分散式檔案服務(DFC)。執行緒、RPC、CDS、安全服務和DTS元件通常被成為安全核心,並且是組成任何DCE環境所必須的元件,DTS是可選件。在DCE環境中,還包括用於管理這些元件的管理工具。
  
  DCE被稱做中介軟體或使其具有能力的技術,它不是獨立存在的,而是被捆綁在供應商作業系統中,或者由第三方供應商進行整合。
  
  2.DTP模型
  
  DTP模型是X/OPEN組織提出的一種軟體結構,這種結構允許多個應用程式去共享多個資源管理器提供的資源,並且具有協調全域性事物的能力。
  
  X/OPEN是一個獨立的、具有全球影響力的開放系統組織,它得到了世界大多數的最大的資訊系統供應商的支援,其根本任何是通過規範開放系統的具體實現,從計算的觀點考慮如何讓使用者獲得更大的利益。
  
  X/OPEN的DTP模型由5個基本模組組成:

網管網bitsCN.com


  
  應用程式(AP):用於定義事物的邊界,並確定組成事物操作的動作。
  
  資源管理器(RM):如資料庫或檔案系統用於存取檔案。
  
  事物管理器(TP):給事物分配標識,監督事物的處理過程並負責事物的完成以及協調事物失敗的恢復。
  
  通訊資源管理器(CRM):在一個事物管理器內或兩個事物管理器之間對通訊進行控制。
  
  在這5個模組之間X/OPEN模型定義了這樣一些模組與模組之間的介面規範:
  
  應用程式——資源管理器之間已經存在了一些X/OPEN的規範,如SQL和ISAM;在應用程式——事物管理器之間定義了TX介面;在交易管理器——資源管理器之間定義了XA介面;在交易管理器——通訊資源管理器之間定義了XA+介面;在應用程式——通訊資源管理器之間有3種介面:TXRPC、XATMI和CPI-C;在通訊資源管理器——作業系統提供的底層通訊協議之間提供了XAP-TP介面。
  
  3.CORBA
  
  CORBA是Common Object Request Broker Architecture的縮寫,簡稱公共物件請求代理結構,它由國際物件管理組織OMG制定,這個組織是一個國際性組織,始建於1989年,現已擁有包括生產廠商與軟體開發商800多個會員,其目的是在分佈和已構計算機環境下為應用軟體的開發提供一個公共框架,使開發出來的軟體即面向物件又具有可重用性、可移植性以及可操作性等特點。有關CORBA的其他功能情況參見下面的第三部分說明。 網管網bitsCN.com
  
  4.J2EE
  
  J2EE是Java 2 Platform Enterprise Edition的縮寫,是一種多層應用模式的結構體系。整個規範由SUN公司提出,它將業務邏輯從系統服務功能和使用者介面中分離出去,放置在客戶層和應用基礎設施這兩層之間的中間層,是目前應用的最為廣泛的面向Web的應用系統結構規範。有關J2EE的其他功能情況參見下面的第三部分說明。
  
  5.網際網路相關技術規範
  
  Web(World Wide Web)是一種網路化的資訊資源,它依賴於3個機制,使這些資訊資源可以面對廣大的使用者。
  
  1)一種唯一的命名機制,為網上的資源進行定位,如:URI。
  
  2)一種通訊規程,以便在網上可以存取這些被命名的資源,如:HTTP。
  
  3)混合文字,以便更好地駕御這些資訊資源,如:HTML。
  
  URI(Universal Resource Identifier)全域性資源標識,一種命名機制,它將在網上的一個資源的定位分為3個部分:用於存取資源的通訊方式的名稱,如HTTP、FTP;儲存有資源的機器的名稱,如:www.sohu.com;資源本身的名稱,也就是存取這些資源的路徑。HTTP(HyperText Transfer Protocol)是一種用於分散式、相互協作、混合型媒體的資訊系統的應用層的通訊規程。使用這一規程,除了可以在資訊系統中取得資料外,還可以進行資料查詢,對前端進行更新以及進行資訊釋出等操作。

feedom.net


  
  HTML(HyperText Markup Language)是一種網上使用的出版語言,它可以為作者提供這樣的功能:在線上出版的文件中包括標題、文字、表格、列表和照片等;按下滑鼠後,通過混合文字鏈路查詢文字;與遠端的服務為進行聯機事物處理建立表格,以便進行資訊查詢、預定和訂購產品等操作;在文件中直接包含獨立頁面、影像資料與聲音資料等。
  
  這些規範都是web技術的基礎,除了這些技術規範以外,還有一些規範也非常重要,它的用途是實現企業與企業間通過Web實現資料交換。這些規範是XML、SOAP、UDDI和WSDL。
  
  vXML(Extensible Markup Language)通過提供更靈活和更容易被接收的資訊標識方法來改進Web的功能。XML被稱為可擴充套件的標註語言,它不像HTML是一種單一的、預先定義的語言,XML是一種用於描述其他語言的語言,使用XML,你可以定義你自己的、不受到型別限制的、其他型別的文件。
  
  SOAP(Simple Object Access Protocol)是一種輕量級規程,用於在沒有控制中心、分散式的環境中交換資訊。它以XML為基礎,由4個部分組成:一個信封,定義了是什麼資訊和如何對它進行處理的框架;一組編碼規則,用於描述應用定義的資料型別的表示示例;一組表示遠端過程呼叫和應答的規則方式,以及一組捆綁方式,這種方式用於使用低層通訊規程交換資訊。SOAP具有與其他規則相結合的可能性。 中國網管聯盟www_bitscn_com
  
  UDDI(Universal Description,Discovery and Integration)是一個規範,這個規範用於Web服務以分散式、以Web為基礎的資訊的註冊。UDDI同時也是一個這樣的規範的實現的公用的可接入的集合,這個規範是是某個企業的Web服務所能提供的內容用登記資訊的方式提供出來,以便其他企業可以發現這些服務。Web服務是Web技術的下一步發展方向,它可以允許可程式設計的被放置在Web上,其他方可以使用分散式的方式進行存取。
  
  WSDL(Web Service Description Language)是一組包含面向文件或面向過程訊息的端點操作資訊的xml格式網路服務描述;操作和訊息首先被抽象的描述,然後捆綁到具體的網路規程和訊息格式中,以便定義端點,相關的具體端點被組合進抽象的端點中(服務)。WSDL可以捆綁描述與SOAP、HTTP GET/POST和MIME相關。

三、主流中介軟體技術平臺
  下面重點闡述和比較了三大主流中介軟體技術平臺,使讀者加深對中介軟體技術理解。
  
  1.當前支援伺服器端中介軟體技術的平臺
  
  考察當前主流的分佈計算技術平臺,主要有OMG的CORBA、Sun的J2EE和Microsoft DNA 2000。它們都是支援伺服器端中介軟體技術開發的平臺,但都有其各自的特點,將分別闡述如下。
  
  (1)OMG的CORBA
  
  CORBA分佈計算技術是OMG組織基於眾多開放系統平臺廠商提交的分佈物件互操作內容的基礎上制定的公共物件請求代理體系規範。
  
  CORBA分佈計算技術,是由絕大多數分佈計算平臺廠商所支援和遵循的系統規範技術,具有模型完整、先進,獨立於系統平臺和開發語言,被支援程度廣泛的特點,已逐漸成為分佈計算技術的標準。COBRA標準主要分為3個層次:物件請求代理、公共物件服務和公共設施。最底層是物件請求代理ORB,規定了分佈物件的定義(介面)和語言對映,實現物件間的通訊和互操作,是分佈物件系統中的"軟匯流排";在ORB之上定義了很多公共服務,可以提供諸如併發服務、名字服務、事務(交易)服務、安全服務等各種各樣的服務;最上層的公共設施則定義了元件框架,提供可直接為業務物件使用的服務,規定業務物件有效協作所需的協定規則。目前,CORBA相容的分佈計算產品層出不窮,其中有中介軟體廠商的ORB產品,如BEAM3,IBM Component Broker,有分佈物件廠商推出的產品,如IONAObix和OOCObacus等。 54com.cn
  
  CORBA規範的近期發展,增加了面向Internet的特性,服務質量控制和CORBA構件模型(CORBA Component Model)。
  
  Internet整合特性包括了針對IIOP傳輸的防火牆(Firewall)和可內部操作的定義了URL命名格式的命名服務(Naming Service)。
  
  服務質量控制包括能夠具有質量控制的非同步訊息服務,一組針對嵌入系統的CORBA定義,一組關於實時CORBA與容錯CORBA的請求方案。
  
  CORBA CCM(CORBA Component Model)技術,是在支援POA的CORBA規範(版本2.3以後)基礎上,結合EJB當前規範的基礎上發展起來的。CORBA構件模型,是OMG組織制定的一個用於開發和配置分散式應用的伺服器端中介軟體模型規範,它主要包括如下三項內容:
  
  a、抽象構件模型,用以描述伺服器端構件結構及構件間互操作的結構;
  
  b、構件容器結構,用以提供通用的構件執行和管理環境,並支援對安全、事務、持久狀態等系統服務的整合;
  
  c、構件的配置和打包規範,CCM使用打包技術來管理構件的二進位制、多語言版本的可執行程式碼和配置資訊,並制定了構件包的具體內容和基於XML的文件內容標準。
  
  總之,CORBA的特點是大而全,互操作性和開放性非常好。CORBA的缺點是龐大而複雜,並且技術和標準的更新相對較慢,COBRA規範從1.0升級到2.0所花的時間非常短,而再往上的版本的釋出就相對十分緩慢了。在具體的應用中使用不是很多。 中國網管論壇bbs.bitsCN.com
  
  (2)Sun的J2EE
  
  為了推動基於Java的伺服器端應用開發, Sun於是在1999年底推出了Java2技術及相關的J2EE規範,J2EE的目標是:提供平臺無關的、可移植的、支援併發訪問和安全的,完全基於Java的開發伺服器端中介軟體的標準。
  
  在J2EE中,Sun給出了完整的基於Java語言開發面向企業分佈應用規範,其中,在分散式互操作協議上,J2EE同時支援RMI和IIOP,而在伺服器端分散式應用的構造形式,則包括了Java Servlet、JSP(Java Server Page)、EJB等多種形式,以支援不同的業務需求,而且Java應用程式具有"Write once,run anywhere"的特性,使得J2EE技術在釋出計算領域得到了快速發展。
  
  J2EE簡化了構件可伸縮的、其於構件伺服器端應用的複雜度,雖然DNA 2000也一樣,但最大的區別是DNA 2000是一個產品,J2EE是一個規範,不同的廠家可以實現自己的符合J2EE規範的產品,J2EE規範,是眾多廠家參與制定的,它不為Sun所獨有,而且其支援跨平臺的開發,目前許多大的分佈計算平臺廠商都公開支援與J2EE相容技術。
  
  EJB是Sun推出的基於Java的伺服器端構件規範J2EE的一部分,自從J2EE推出之後,得到了廣泛的發展,已經成為應用伺服器端的標準技術。SunEJB技術是在Java Bean本地構件基礎上,發展的面向伺服器端分佈應用構件技術。它基於Java語言,提供了基於Java二進位制位元組程式碼的重用方式。EJB給出了系統的伺服器端分佈構件規範,這包括了構件、構件容器的介面規範以及構件打包、構件配置等的標準規範內容。EJB技術的推出,使得用Java基於構件方法開發伺服器端分散式應用成為可能。從企業應用多層結構的角度,EJB是業務邏輯層的中介軟體技術,與JavaBeans不同,它提供了事務處理的能力,自從三層結構提出以後,中間層,也就是業務邏輯層,是處理事務的核心,從資料儲存層分離,取代了儲存層的大部分地位。從分散式計算的角度,EJB像CORBA一樣,提供了分散式技術的基礎。提供了物件之間的通訊手段。從Internet技術應用的角度,EJB和Servlet,JSP一起成為新一代應用伺服器的技術標準,EJB中的Bean可以分為會話Bean和實體Bean,前者維護會話,後者處理事務,現在Servlet負責與客戶端通訊,訪問EJB,並把結果通過JSP產生頁面傳回客戶端。 網管網bitsCN.com
  
  J2EE的優點是,伺服器市場的主流還是大型機和UNIX平臺,這意味著以Java開發構件,能夠做到"Write once,run anywhere",開發的應用可以配置到包括Windows平臺在內的任何伺服器端環境中去。
  
  (3)Microsoft DNA 2000
  
  Microsoft DNA 2000(Distributed interNet Applications)是Microsoft在推出Windows2000系列作業系統平臺基礎上,在擴充套件了分佈計算模型,以及改造Back Office系列伺服器端分佈計算產品後釋出的新的分佈計算體系結構和規範。
  
  在伺服器端,DNA 2000提供了ASP、COM、Cluster等的應用支援。目前,DNA2000在技術結構上有著巨大的優越性。一方面,由於Microsoft是作業系統平臺廠商,因此DNA 2000技術得到了底層作業系統平臺的強大支援;另一方面,由於Microsoft的作業系統平臺應用廣泛,支援該系統平臺的應用開發廠商數目眾多,因此在實際應用中,DNA 2000得到了眾多應用開發商的採用和支援。
  
  DNA 2000融合了當今最先進的分佈計算理論和思想,如事務處理、可伸縮性、非同步訊息佇列、叢集等內容。DNA使得開發可以基於Microsoft平臺的伺服器構件應用,其中,如資料庫事務服務、非同步通訊服務和安全服務等,都由底層的分佈物件系統提供。以Microsoft為首的DCOM/COM/COM+陣營,從DDE,OLE到ActiveX等,提供了中介軟體開發的基礎,如VC,VB,Delphi等都支援DCOM,包括OLE DB在內新的資料庫存取技術,隨著Windows2000的釋出,Microsoft的DCOM/COM/COM+技術,在DNA2000分佈計算結構基礎上,展現了一個全新的分佈構件應用模型。首先,DCOM/COM/COM+的構件仍然採用普通的COM(Component Object Model)模型。COM最初作為Microsoft桌面系統的構件技術,主要為本地的OLE應用服務,但是隨著Microsoft伺服器作業系統NT和DCOM的釋出,COM通過底層的遠端支援使得構件技術延伸到了分佈應用領域。DCOM/COM/COM+更將其擴充為面向伺服器端分佈應用的業務邏輯中介軟體。通過COM+的相關服務設施,如負載均衡、記憶體資料庫、物件池、構件管理與配置等等,DCOM/COM/COM+將COM、DCOM、MTS的功能有機地統一在一起,形成了一個概念、功能強的構件應用體系結構。而且,DNA2000是單一廠家提供的分佈物件構件模型,開發者使用的是同一廠家提供的系列開發工具,這比組合多家開發工具更有吸引力。

54com.cn


  
  但是它的不足是依賴於Microsoft的作業系統平臺,因而在其它開發系統平臺(如Unix、Linux)上不能發揮作用。
  
  2.相關性比較分析
  
  目前,針對上述的各種分佈計算平臺技術,都出現了相似且具有可比性的分散式構件,即CORBA CCM(CORBA Component Model)技術、SUN的EJB(Enterprise JavaBean)技術和DNA 2000中的COM/DCOM/COM+技術。
  
  對於以上三個分佈計算平臺,本文采用業界常用的做法從以下三個方面進行分析:
  
  整合性:整合性主要反映在基礎平臺對應用程式互操作能力的支援上。它要求分佈在不同機器平臺和作業系統上、採用不同的語言或者開發工具生成的各類商業應用必須能整合在一起,構成一個統一的企業計算框架。這一整合框架必須建立在網路的基礎之上,並且具備對於遺留應用的整合能力;
  
  可用性:要求所採用的軟體構件技術必須是成熟的技術,相應的產品也必須是成熟的產品,在至關重要的企業應用中能夠穩定、安全、可靠地執行。另外,由於資料庫在企業計算中扮演著重要角色,軟體構件技術應能與資料庫技術緊密整合;
  
  可擴充套件性:整合框架必須是可擴充套件的,能夠協調不同的設計模式和實現策略,可以根據企業計算的需求進行裁剪,並能迅速反應市場的變化和技術的發展趨勢。通過保證當前應用的可重用性,最大程度地保護企業的投資。

feedom.net


  
  下表從整合性,可用性,可擴充套件性三個方面,給出了上述三種主流分佈計算平臺的比較結果。
  
  雖然這三種平臺因為其形成的歷史背景和商業背景有所不同,各自有自己的側重和特點,其實在它們之間也有很大的相通性和互補性。