一、什么是Web服務(wù)器
Web服務(wù)器指的是提供web功能的服務(wù)器,主要就是HTTP服務(wù)器,包括圖片的下載等系列和文本相關(guān)的內(nèi)容。Web服務(wù)器支持以HTP協(xié)議的方式來訪間,當(dāng)Web服務(wù)器接收到一個HTTP請求時,它同樣會以HTTP協(xié)議格式返回一個響應(yīng),這個響應(yīng)可以是一個靜態(tài)的HTML頁面,也可以是過處理的一個動態(tài)的頁面,還可以是音頻、視頻等信息。為了處理一個請求,Web服務(wù)器可以做出個響應(yīng),并進行頁面跳轉(zhuǎn),或者把動態(tài)響應(yīng)的產(chǎn)生委托給一些其他的程序,例如CGI腳本、JSP、Servlet或者一些其他的服務(wù)器端程序。Web服務(wù)器一般都使用了一些特有的機制(例如容錯機制)來保證Web服務(wù)器有較好的擴展性和不間斷地提供服務(wù)。常見的Web服務(wù)器有IIS和?Apache。
二、什么是應(yīng)用服務(wù)器
應(yīng)用程序服務(wù)器是為應(yīng)用程序提供業(yè)務(wù)邏輯的代碼。它是基于組件的,位于以服務(wù)器為中心的架構(gòu)的中間層。
這個架構(gòu)主要基于Web。中間層是業(yè)務(wù)邏輯所在的應(yīng)用服務(wù)器。而第三層,則是事務(wù)服務(wù)器的數(shù)據(jù)庫。應(yīng)用程序服務(wù)器充當(dāng)?shù)氖怯脩艉蛿?shù)據(jù)庫之間的交互。
應(yīng)用服務(wù)器通過各種協(xié)議把商業(yè)邏輯曝露給客戶端的程序。它還可以包括計算機、web服務(wù)器或其他應(yīng)用服務(wù)器上的圖形用戶界面。業(yè)務(wù)邏輯通過組件API公開。它還管理自己的資源以及執(zhí)行安全性、事務(wù)處理、資源池以及消息傳遞。
對于高端需求,應(yīng)用服務(wù)器往往具有高可用性監(jiān)視、集群化、負(fù)載平衡、集成冗余和高性能分布式應(yīng)用服務(wù),以及對復(fù)雜的數(shù)據(jù)庫訪問的支持。
在流行的應(yīng)用服務(wù)器平臺中有J2EE,WebLogic,Glassfish,JBoss企業(yè)應(yīng)用平臺,以及Apache Tomcat和Apache Geronimo等等。

三、Web服務(wù)器和Web應(yīng)用服務(wù)器的關(guān)系
Web服務(wù)器一般是通用的,而應(yīng)用服務(wù)器一般是專用的,例如?Tomcat只能處理Java應(yīng)用程序而不能處理ASPX或PHP。需要注意的是,Web服務(wù)器與應(yīng)用服務(wù)器是并列關(guān)系,二者不存在相互包容關(guān)系。在使用的時候,如果訪問的頁面只有HTML,用Web服務(wù)器就足夠了,但是如果是JSP,此時就需要應(yīng)用服務(wù)器,因為只有應(yīng)用服務(wù)器才能解析JSP里的Java代碼,并將解析結(jié)果以HTML的格式返回給用戶。
四、Web服務(wù)器和其他類型的服務(wù)器有何區(qū)別
應(yīng)用程序服務(wù)器與Web服務(wù)器不同,因為前者通過多種協(xié)議處理向應(yīng)用程序提供業(yè)務(wù)邏輯,而Web服務(wù)器響應(yīng)并處理HTTP請求。雖然Web服務(wù)器可能不支持事務(wù)或數(shù)據(jù)庫連接池,但它可能具有容錯和可擴展性功能,如負(fù)載平衡、緩存和集群。
應(yīng)用服務(wù)器與數(shù)據(jù)庫服務(wù)器不同,因為該服務(wù)器執(zhí)行諸如數(shù)據(jù)分析、存儲、數(shù)據(jù)處理、歸檔以及其他與數(shù)據(jù)管理相關(guān)的任務(wù)。數(shù)據(jù)庫服務(wù)器則使用諸如ODBC、JDBC等協(xié)議來命名。