歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

點評主流中間件技術平台

  軟件系統的復雜性不斷增長、軟件人員的頻繁流動和軟件行業的激烈競爭迫使軟件企業提高軟件質量、積累和固化知識財富,並盡可能地縮短軟件產品的開發周期。於是集軟件復用、分布式對象計算、企業級應用開發等技術為一體的'基於中間件的軟件開發'(CBSD,Component Based Sortware Development)應運而生,這種技術以軟件架構為組裝藍圖,以可復用軟件構件為組裝模塊,支持組裝式軟件的復用,大大提高了軟件生產效率和軟件質量。為此國風外對於這一技術的研究正在不斷深入,同時大型的軟件公司(例如sun,microsoft)及軟件組織機構(OMG)都推出了支持中間件技術的軟件平台。面對高深的中間件技術和繁多的軟件平台,很多人感到很茫然和無從下手,本文簡單介紹了中間件技術的發展和特點,重點闡述和比較了三大主流中間件技術平台,使讀者對中間件技術有個全面的了解。    引言   軟件系統的復雜性不斷增長、軟件人員的頻繁流動和軟件行業的激烈競爭迫使軟件企業提高軟件質量、積累和固化知識財富,並盡可能地縮短軟件產品的開發周期。於是集軟件復用、分布式對象計算、企業級應用開發等技術為一體的'基於中間件的軟件開發'(CBSD,Component Based Sortware Development)應運而生,這種技術以軟件架構為組裝藍圖,以可復用軟件構件為組裝模塊,支持組裝式軟件的復用,大大提高了軟件生產效率和軟件質量。為此國風外對於這一技術的研究正在不斷深入,同時大型的軟件公司(例如sun,microsoft)及軟件組織機構(OMG)都推出了支持中間件技術的軟件平台。面對高深的中間件技術和繁多的軟件平台,很多人感到很茫然和無從下手,本文簡單介紹了中間件技術的發展和特點,重點闡述和比較了三大主流中間件技術平台,使讀者對中間件技術有個全面的了解。     中間件技術的概念及發展   顧名思義,中間件是處於應用軟件和系統軟件之間的一類軟件,是獨立於硬件或數據庫廠商(處於其產品的中間,實現其互連)的一類軟件,是客戶方與服務方之間的連接件,是需要進行二次開發的中間產品。     應該說,中間件技術是伴隨網絡而發展起來的一種面向對象的技術。以前的計算機系統多是單機系統,多個用戶是通過聯機終端來訪問的,沒有網絡的概念。網絡出現後,產生了Client/Server的計算服務模式,多個客戶端可以共享數據庫服務器和打印服務器等等。隨著網絡的更進一步發展,許多軟件需要在不同廠家的網絡產品、硬件平台、網絡協議異構環境下運行,應用的規模也從局域網發展到廣域網。在這種情況下,Client/Server模式的局限性也就暴露出來了,於是中間件應運而生。中間件是位於操作系統和應用軟件之間的通用服務,它的主要作用是用來屏蔽網絡硬件平台的差異性和操作系統與網絡協議的異構性,使應用軟件能夠比較平滑地運行於不同平台上。同時中間件在負載平衡、連接管理和調度方面起了很大的作用,使企業級應用的性能得到大幅提升,滿足了關鍵業務的需求。     當前支持服務器端中間件技術的平台   考察當前主流的分布計算技術平台,主要有OMG的CORBA、Sun的J2EE和Microsoft DNA 2000。它們都是支持服務器端中間件技術開發的平台,但都有其各自的特點,將分別闡述如下。     OMG的CORBA   CORBA分布計算技術是OMG組織基於眾多開放系統平台廠商提交的分布對象互操作內容的基礎上制定的公共對象請求代理體系規范。     CORBA分布計算技術,是由絕大多數分布計算平台廠商所支持和遵循的系統規范技術,具有模型完整、先進,獨立於系統平台和開發語言,被支持程度廣泛的特點,已逐漸成為分布計算技術的標准。COBRA標准主要分為3個層次:對象請求代理、公共對象服務和公共設施。最底層是對象請求代理ORB,規定了分布對象的定義(接口)和語言映射,實現對象間的通訊和互操作,是分布對象系統中的'軟總線';在ORB之上定義了很多公共服務,可以提供諸如並發服務、名字服務、事務(交易)服務、安全服務等各種各樣的服務;最上層的公共設施則定義了組件框架,提供可直接為業務對象使用的服務,規定業務對象有效協作所需的協定規則。目前,CORBA兼容的分布計算產品層出不窮,其中有中間件廠商的ORB產品,如BEAM3,IBM Component Broker,有分布對象廠商推出的產品,如IONAObix和OOCObacus等.     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所花的時間非常短,而再往上的版本的發布就相對十分緩慢了。在具體的應用中使用不是很多。     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產生頁面傳回客戶端。     J2EE的優點是,服務器市場的主流還是大型機和UNIX平台,這意味著以Java開發構件,能夠做到'Write once,run anywhere',開發的應用可以配置到包括Windows平台在內的任何服務器端環境中去。     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通過底層的遠程支持使得構件技術




Copyright © Linux教程網 All Rights Reserved