(作者:曹文龍、李維) 通常,建立一個網站要考慮硬件平台、操作系統、數據庫、Web服務器、Web應用軟件等的選擇問題。另外,大多數Web服務器主要是為一種操作系統進行優化的,有的只能運行在一種操作系統上,所以選擇Web服務器時,還需要同操作系統聯系起來考慮。對於Web服務器的性能,一般要考慮以下幾個方面。 響應能力:即Web服務器對多用戶浏覽信息的響應速度,響應速度越快,單位時間內就可以支持越多的訪問量,用戶點擊的響應速度就越快。前面提到的多線程、多進程、負載均衡等技術都是要考慮的因素。 與後端服務器的集成:Web服務器通過與後端數據庫及應用服務器連接,並將不同來源、不同格式的信息轉換成統一的格式,然後向用戶提供Web信息。例如前面介紹的對XML的支持。 管理的難易程度:即管理Web服務器是否簡單易行。 開發難易程度:Web服務器既是Web應用的服務器,還往往是Web開發平台,它的集成開發能力、支持的開發語言的種類和開發的簡易程度決定了其功能擴展的能力。 安全性:安全性需從前面提到的數據流的安全和網站內容的安全兩方面進行考慮。 同平台的結合:平台包括操作系統平台和數據庫平台,一般情況下,操作系統和數據庫廠商同自己的Web服務器產品相互支持較好,有的甚至只支持自己的產品,如Microsoft的IIS只能在WinowsNT或Windows2000上運行。 保護原來的投資:在原有的應用中增加Internet的訪問功能是一種更好的、容易實現的方案。例如,在一個公司中可能要更新一個客戶服務系統,使它支持對存放在內部的Web服務器上的以GIF或JPEG格式編碼的客戶信件的存取;或者增加Web浏覽器對內部網上存放的公司政策和雇員信息的存取,這將會通過增加已有的客戶/服務器系統的能力來提高公司的辦事效率,同時也會降低公司辦公費用的開銷。 以下為您介紹目前主要的Web服務器產品。 Microsoft IIS Microsoft的Web服務器產品為Internet Information Server (IIS),它提供ISAPI(Intranet Server API)作為擴展Web服務器功能的編程接口;同時,它還提供一個Internet數據庫連接器(IDC),可以實現對數據庫的查詢和更新。Microsoft的另一個產品是Microsoft Visual InterDev,它是一個Web應用快速開發環境,可提供服務器和客戶機端的編程工具、數據庫工具和內容編輯工具,還提供集成化的站點管理功能。 由於具有與操作系統的親和性並繼承了Microsoft產品一貫的用戶界面,IIS利用與Microsoft Proxy Server、Certificate Server、SiteServer、BackOffice以及其他應用程序緊密結合之便,成為功能強大、使用方便的Web服務器。通過圍繞WindowsNT所做的優化,IIS具有很高的執行效率、出色的安全保密性、易於管理以及啟動迅捷等特點。它既可用於集成現有的應用方式,也可用於實施Web應用系統。IIS變得普及的一個關鍵就是引入了ASP,這是Microsoft用於建立動態網頁的技術。ASP支持多種腳本語言,包括JavaScript、PerlScript以及VBScript,使其可以很容易地訪問其他服務器的軟件組件。這一切是以COM為基礎達到的,COM是Windows下組件協同的標准。而分布式COM,即DCOM,允許程序使用網絡上的組件,就好像這些組件就在本地一樣。 IIS還可以分享WindowsNT異步I/O能力,異步I/O使一個線程化的Web服務器在處理訪問請求的同時可以處理文件或者網絡I/O。另外,WindowsNT的負載均衡服務(WindowsNT Load Balancing Services)容易建立一個服務器集群,將負載合理地分布在各個服務器上,對建立大型的網站,也是個很好的方案。 Microsoft IIS是目前最流行的Web服務器產品之一,市場占有率在20%左右,很多著名的網站如Intel公司的Intel.com等都是建立在Microsoft IIS的平台上。 IBM WebSphere IBM WebSphere是一組專門為商務網站設計的套件,其中最主要是WebSphere CommerceSuite,它包含的工具可以創建和管理電子商務Web站點,另外還包括可在主機上安裝電子商務站點的服務器軟件和支付軟件。作為集成化的電子商務軟件平台,新的WebSphere通過與更高等級的工具的集成為用戶提供更多、更實際的應用價值。 首先,WebSphere完全建立在行業標准之上,並提供了業界流行的資源配置。 其次,WebSphere的個性化開發功能不斷加強,提高了客戶應用的市場競爭力。Web Content Management和WebSphere Application Sever提供的過濾技術大大豐富了用戶的個性化應用開發。 第三,WebSphere軟件平台有效地拓展了無線應用的空間。WebSphere Everyplace Suite中的Web動態翻譯界面借助靈活的代碼轉換技術為新的無線設備提供了支持,而WebSphere Transcoding Publisher則保證了Internet與無線設備之間的代碼傳輸,使用戶實現了通過掌上設備進行Web浏覽的功能。 第四,WebSphere軟件平台為用戶提供了更出色的服務功能。用戶不但可以監測所有的交易環節,而且可以創建一致的、可跟蹤的流程。而交易流程中的每一步都可以在後台的數據庫中得到反映。 第五,WebSphere軟件平台還通過在新的電子商務系統與企業現有的系統實現無縫的、實時的連接,減少了企業的存貨目錄的層次,降低了企業的經營成本。 此外,WebSphere還提供了從桌面系統、電話、Internet到呼叫中心、Web服務器的語音服務。IBM WebSphere Voice 服務器使企業可以利用VoiceXML語言將語音應用程序擴展到移動通信網絡。 從以下的例子中,我們可以發現WebSphere為用戶帶來的益處:PharmaCare是美國成長最快的醫藥管理顧問公司,采用IBM的Host Publisher和WebSphere Application Server, PharmaCare僅用三個月就建成了基於IBM DB2通用數據庫的電子商務網站。該網站建成後,PharmaCare每年節省了十三萬美元的運營成本,投資回報率達到了100%;這種客戶還有很多,如全球著名的圖書零售集團英格拉姆公司(Ingram Micro)、韓國三星電子等。 Netscape IPlanet WebServer/ Netscape Application Server 為了提高性能,Netscape在它的Web服務器中引進了應用程序編程接口NSAPI(Netscape Server API)。利用NSAPI,開發人員可以擴展服務器的功能,包括對外部數據庫的訪問。NSAPI可支持Windows NT、Solaris和HP/UX等平台。 IPlanet WebServer(Netscape Enterprise Server)以能在眾多的不同平台上運行見長,主要功能有:帶有客戶端授權的SSL(Secure Sockets Layer)、Verity的集成式檢索器、SNMP、出色的數據庫聯接功能及Web網站內容管理等。Netscape Server作為可靠的Web應用服務的另一個關鍵是Netscape Application Server(NAS)。NAS是一種編程環境,支持Java和C++對象,使得應用的伸縮性和容錯能力強。NAS包含的工具允許用戶建立多線程的應用,並且可以集成HTML,數據庫查詢,以及在NAServer上實現的商業邏輯。 在WindowsNT上的IPlanet WebServer同樣是一個大型Web服務器,擁有廣泛的第三方組件及工具支持,而且支持多種編程模型。比如,除了支持傳統的HTML和CGI外,Netscape還支持服務器端的JavaScript,支持IIOP(Internet Inter Orb Protocol,一個用於與第三方的CORBA軟件通訊的協議)。Netscape還提供了優秀的用戶及安全性管理。 Netscape Directory Server提供了結構化的LDAP目錄服務,借助LDAP目錄服務,可以更有效更靈活地管理用戶及資源。 IPlanet WebServer的市場占有率在6%左右,客戶有著名的CNN.com(美國大選網站)Bital.com.mx等。 Oracle WebServer Oracle WebServer不僅僅是一個Web服務器產品,通過其高效率、多線程的可伸縮體系結構,Oracle WebServer能與Oracle數據庫有效結合,並提供相應的開發環境,因而也是開發Web數據庫應用的工具。 Oracle WebServer支持多種平台,與Oracle數據庫產品配合使用能獲得最佳性能,具有良好的擴展性和可移植性,良好的安全性,提供多種安全機制,如防火牆功能、賬號管理等。 Oracle的電子商務平台是建立在NCA(網絡計算機結構)之上的,它由許多面向商業的應用部件(Cartridge)組成,Oracle和它的合作伙伴提供了這個平台的關鍵部件,包括:Oracles Universal Application Server、Oracles Web Application Server、Oracles Internet Commerce Server、Oracles Payment Server、Oracles Security Server、Oracles InterOffice、CyberCash CashRegister Cartridge、VeriFone vPOS Cartridge、Taxware Worldtax system。其中,Oracle Web Applicatin Server是一個用在Internet上的可伸縮的Web服務器,它包含WRB(Web Request Broker)的下一個版本,並將為電子商務提供快速、有效、可靠和安全的事務處理和內容管理。Oracle Web Application Server的核心是WRB-Web請求代理,這種機制能夠高速地調度各個部件、均衡各個部件的負載。它的WRB API(應用編程接口)提供了一個應用環境,這些API優於低層的第一代HTTP API。通過WRB API,應用程序開發人員能夠建立定制的應用部件,編程語言可選用Java、PL/SQL、LiveHTML(SSL)、C/C++。所有服務器部件可以作為獨立的進程運行,從而確保在任意一個第三方提供的部件發生錯誤時,不會影響業務其他部分的工作。因此,對於所有 用戶而言,這個服務器的可靠性是無與倫比的。 在實際應用中,Oracle WebServer是同前面提到的Oracle公司的其它平台產品組合在一起,形成一個完整的電子商務平台。建立在Oracle電子商務平台之上的第三方解決方案的成功案例有:Lucent Technologies(www.lucentdirect.com)、Webshop(www.webshop.com.au)、Wehkamp(www.wehkamp.nl)、Stocksmart(www.storcksmart.com)等。 Apache Apache源於NCSAhttpd服務器,經過多次修改,成為世界上最流行的Web服務器軟件之一。Apache取自“a patchy server”的讀音,意思是充滿補丁的服務器,因為它是自由軟件,所以不斷有人來為它開發新的功能、新的特性、修改原來的缺陷。Apache的特點是簡單、速度快、性能穩定,並可做代理服務器來使用。本來它只用