[摘 要]隨著計算機技術的發展,各種計算機硬件和軟件資源的異構性使得中間件應運而生。J2EE服務器是一種符合J2EE規范的Web服務器中間件。由于繼承了J2EE的平臺無關性,因此,J2EE服務器擁有平臺統一、代碼重用率高、平臺/OS獨立等優點。本文主要對當前兩種主流J2EE服務器——IBM的WebSphere和BEA的WebLogic進行比較。
[關鍵詞]J2EE服務器 WebLogic服務器 WebSphere服務器
[中圖分類號]TP [文獻標識碼]A [文章編號]1009-5489(2008)05-0191-02
一、背景
1.中間件
應用程序規模的不斷擴大,特別是Internet及WWW的出現,使計算機的應用范圍更為廣闊,許多應用程序需在網絡環境的異構平臺上運行。在這種分布異構環境中,通常存在多種硬件系統平臺,在這些硬件平臺上又存在各種各樣的系統軟件,以及多種風格各異的用戶界面,這些硬件系統平臺還可能采用不同的網絡協議和網絡體系結構連接。如何把這些系統集成起來并開發新的應用是一個非常現實而困難的問題。
為解決分布異構問題,人們提出了中間件的概念。中間件是基礎軟件的一大類,屬于可復用軟件的范疇。顧名思義,中間件處于操作系統軟件與用戶的應用軟件的中間。中間件在操作系統、網絡和數據庫之上,應用軟件的下層,總的作用是為處于自己上層的應用軟件提供運行與開發的環境,幫助用戶靈活、高效地開發和集成復雜的應用軟件。
2.J2EE應用服務器
首先,給出Web服務器的定義。Web應用服務器是分布式中間件軟件實施產品,其作用相當于一個接口,連接一端的各種類型的客戶機,以及另一端的各類后臺系統資源。
J2EE應用服務器指符合由Sun公司倡導的J2EE規范標準和技術的Web應用服務器產品,它為應用組件提供標準化開發模型和運行時環境。
應用服務器具有以下優點:
(1)功能強大的統一平臺,在此基礎上可以構建和部署各類應用程序。
(2)支持各種組件模型,有利于緊湊的模塊化系統設計、代碼可重用度高。
(3)平臺/OS獨立。
(4)可實現各種已有的企業信息系統——如ERP、數據庫和文件系統等——與分布式應用中間件的連接。
(5)聚類大量硬件設備,并將其視作單一資源池。當其中某一硬件發生故障時,可立即由集群中其他設備接替承擔附加負載,以確保服務供應的連續性。這種可靠的后端運行時環境對所有基于Web的應用來說都是非常重要的。
(6)監測敏感數據庫事務處理服務,增強對現有數據庫系統的控制、提高安全性能。
(7)通過緩沖池、資源分配和負載平衡技術提供系統順應能力和提高應用系統性能。
(8)高效的遠程管理能力。
(9)實現資源的“即插即拔”,提高整個企業系統結構的靈活度和開放度。
(10)為訪問各類EIS資源提供統一途徑。
二、產品比較
目前,J2EE應用服務器市場上份額最大的是IBM公司的WebSphere和BEA公司的WebLogic。現在,對這兩種產品的功能、性能、性能/價格比、用戶數、交易量、數據量、響應速度等進行比較。
1.BEA WebLogic服務器
BEA系統公司的WebLogic服務器是企業級的應用服務器,支持EJB,集群以及ERP的連通性。
WebLogic支持所有最新的標準;提供與CORBA、.NET和COM等其他環境的簡單整合;擁有非常好的EJB封裝功能,自動準備好了Beans的應用;擁有集成的安全環境,能夠在一個整個的龐大、復雜的企業應用中簡單地執行安全的應用和強制執行安全措施。
目前WebLogic的應用服務器的最新版本是9.0,它提供了企業級的內核,多個編程模型界面,SOA支持和增強的管理與通信特性。新版本與J2EE 1.4標準完全兼容,并支持廣域網和城域網范圍的失效保護。對于SOAP、WDSL和XML的支持是很好地集成在一起的并且是自動的,并不只是簡單的手工兼容。
WebLogic還集成了Borland、WebGain、Sun Forte等公司的第三方開發工具,以及BMC Patrol、Tivoli和OpenView等管理平臺。這些管理平臺能夠監視和控制WebLogic。
安全對于內部應用程序和分布式網絡服務都是一個關鍵的問題。WebLogic支持Java安全套接字擴展、安全套接字層和Java認證與授權服務,并且為企業應用程序帶來了一個統一的安全模式。應用程序訪問、用戶認證、安全審計和數據保護PKI等政策可以通過一個容器來指定,而不需要組件級的工具。因此,一個標準化的安全模式很容易應用到所有正在開發當中的應用程序中。BEA還提供了一個安全編程接口,這樣,第三方安全廠商能夠很容易地擴展這個服務器軟件的功能。
WebLogic的這個版本擴大的集群功能已經擴大和簡化了。做到這一點并不容易。性能增強的方面包括連接緩沖池功能和在組件層進行緩存,這樣,開發人員就不需要為每一個應用編寫代碼。應用程序很容易在整個集群中發布,而且采用新的會話保護,應用程序狀態能夠在整個集群的內存中復制。因此,即使一臺服務器死機了,應用程序也不必重新啟動。
在用戶數和交易量方面,據市場研究公司Gartner的一篇研究報告稱,BEA系統公司的WebLogic服務器占有應用服務器市場34%的份額,是任何一家廠商中市場份額最多的。WebLogic擁有最大的市場份額是因為BEA在市場開發以及迅速全面地支持J2EE和XML等新的標準方面一直走在了前面。
總的來說,BEA WebLogic有如下優點:支持最新的標準;集群安裝和管理非常方便;整個管理也改善了;企業平臺產品線包括一套使開發工作更容易的集成的產品,包括服務器、開發環境、門戶和Java虛擬機。
2.IBM WebSphere服務器
IBM WebSphere產品系列是一套典型的電子商務應用開發工具及運行環境。該產品系列包括:
(1)NetObject Fusion提供許多構建和組織站點的工具,可用來建立和管理整個Web站點;
(2)NetObject BeanBuilder是一個構建applets的可視化寫作工具;
(3)NetObjects ScriptBuilder提供了Smart HTML、javascript、JSP等的編輯器;
(4)Lotus Domino Go Webserver是一個Servlet使能的Web服務器;
(5)IBM WebSphere Studio提供了項目工作臺和有關向導,這些向導可用來存取數據庫、創建JavaBean和servlet等等;
(6)IBM WebSphere Application Server是一個Web應用服務器,它本質上是適合于servlet的Web服務器插件,提供了增強的Servlet API和Servlets管理工具,并集成了JSP技術和數據庫連接技術。
Lotus Domino Go Webserver是一個Web服務器軟件。它具有下列特性:支持CGI、Servlet和一些其他的應用編程接口。這些應用編程接口用來創建動態頁面。具備代理服務器的功能。一個代理服務器是一個請求代理。瀏覽器把請求發到代理服務器,代理服務器從網上或從緩存里取這個頁。支持SSL 3.0。SSL用來確保在web服務器和web瀏覽器之間安全通信。支持PICS。PICS使得用戶可以過濾他們遇到的材料,按照材料的分級接受或者拒絕材料。集成了搜索引擎。集成的搜索引擎是NetQuestion.易維護性。如很容易地維護用戶和訪問控制列表。
WebSphere Studio提供了項目工作臺和有關向導。項目工作臺用來把各種生成的組件集成進一個項目,而各種向導可用來存取數據庫、創建JavaBean和servlet等等。它能為支持瘦客戶端以及安全性和靈活性提供很好的支持。
NetObject Fusion是一個可視化的Web站點的構建和管理工具。用NetObjects Fusion可以設計Web站點的通用元素,創建并維護Web站點的結構,構建各個頁面,并能容易地維護這些頁面。使用NetObject Fusion,可以設計Web站點、構建各個頁面、容易地維護Web站點。下面介紹NetObject Fusion 中的站點視圖、頁面視圖、樣式視圖、對象集視圖、和發布視圖。
NetObjects BeanBuilder是創建多媒體Java applet的可視化寫作工具。NetObjects BeanBuilder使得開發者能用多媒體、特效、靈巧的表單和動態數據來豐富網站,而不要寫一行Java代碼,或者只需寫一些簡單的Java代碼。
使用VisualAge for Java(VAJ)來創建和定制 JavaBean。在使用Studio的向導構建Servlet時很可能需要復雜的JavaBean,這些JavaBean一般可使用VAJ來開發。也可使用VAJ來修改與完善由Studio向導生成的Java Servlet和Bean。VAJ是一個全功能的Java開發環境,包含一個智能化集成開發環境,內含豐富的Java類庫、高性能Java編譯器和虛擬機,集成了包括向導和調試器在內的多種工具,支持JavaBeans的開發。
性能方面,2005年11月,IBM宣布WebSphere應用服務器(WebSphere Application Server)的最新版本,在SPECjAppServer2004行業性能指標評測中WebSphere超出其他競爭對手64%。IBM公布的測試結果顯示,新版本每秒可以支持超過22,000個并發用戶并進行超過2,921項復雜的業務處理。評測結果基于一套完整的IBM解決方案——WebSphere應用服務器軟件最新版本、DB2通用數據庫、以及運行SUSE Linux的IBM System p5550服務器。IBM表示此款強大的解決方案,不僅在性能上遠遠優于運行在Sun Solaris上的BEA和Oracle軟件組合,而且在總體擁有成本也顯著低于該組合。
在用戶數和交易量方面,據權威市場調查機構IDC稱,IBM中間件軟件在企業中的使用量在2004年排名第一。
[參考文獻]
[1]王柏、王紅縵、鄒華:《分布式計算環境》,北京郵電大學出版社出版。
[2]《什么樣的J2EE應用服務器才算好產品》,http://www.kupage.com
[3]《BEA WebLogic產品簡介》,http://www.safebbs.it168.com
[4]《IBM WebSphere簡介》,http://www.delia.org.ru
[5]《應用服務器的霸主:WebLogic簡介》,http://www.91oa.com