含義
Web服務(wù)器可以解析(handles)HTTP協(xié)議偎箫。當(dāng)Web服務(wù)器接收到一個HTTP請求(request),會返回一個HTTP響應(yīng)(response)讯榕,例如送回一個HTML頁面。為了處理一個請求(request),Web服務(wù)器可以響應(yīng)(response)一個靜態(tài)頁面或圖片说订,進(jìn)行頁面跳轉(zhuǎn)(redirect),或者把動態(tài)響應(yīng)(dynamic response)的產(chǎn)生委托(delegate)給一些其它的程序例如CGI腳本潮瓶,JSP(JavaServer Pages)腳本陶冷,servlets,ASP(Active Server Pages)腳本毯辅,服務(wù)器端(server-side)JavaScript埂伦,或者一些其它的服務(wù)器端(server-side)技術(shù)。無論它們(譯者注:腳本)的目的如何思恐,這些服務(wù)器端(server-side)的程序通常產(chǎn)生一個HTML的響應(yīng)(response)來讓瀏覽器可以瀏覽
要知道沾谜,Web服務(wù)器的代理模型(delegation model)非常簡單。當(dāng)一個請求(request)被送到Web服務(wù)器里來時胀莹,它只單純的把請求(request)傳遞給可以更好的處理請求(request)的程序(譯者注:服務(wù)器端腳本)基跑。Web服務(wù)器除了僅僅提供一個可以執(zhí)行服務(wù)器端(server-side)程序和返回(程序所產(chǎn)生的)響應(yīng)(response)的環(huán)境,而不會提供任何功能描焰。服務(wù)器端(server-side)程序通常具有事務(wù)處理(transaction processing)媳否,數(shù)據(jù)庫連接(database connectivity)和消息(messaging)等功能
雖然Web服務(wù)器不支持事務(wù)處理或數(shù)據(jù)庫連接池,但它可以配置(employ)各種策略(strategies)來實現(xiàn)容錯性(fault tolerance)和可擴(kuò)展性(scalability),例如負(fù)載平衡(load balancing)篱竭,緩沖(caching)力图。集群特征(clustering—features)經(jīng)常被誤認(rèn)為僅僅是應(yīng)用程序服務(wù)器專有的特征
簡而言之,Web服務(wù)器只是簡單的通過響應(yīng)(response)HTML頁面來處理HTTP請求(request)
常見產(chǎn)品
在UNIX和LINUX平臺下使用最廣泛的免費HTTPserver是W3C室抽、NCSA和APACHEserver搪哪,而Windows平臺NT/2000/2003使用IIS的WEBserver。在選擇使用WEBserver應(yīng)考慮的本身特性因素有:性能坪圾、安全性晓折、日志和統(tǒng)計、虛擬主機(jī)兽泄、代理server漓概、緩沖服務(wù)和集成應(yīng)用程序等,以下介紹幾種經(jīng)常使用的WEBserver病梢。
Microsoft IIS
Microsoft的Webserver產(chǎn)品為Internet Information Server (IIS)胃珍, IIS 是同意在公共Intranet或Internet上公布信息的Webserver。IIS是眼下最流行的Webserver產(chǎn)品之中的一個蜓陌,非常多著名的站點都是建立在IIS的平臺上觅彰。IIS提供了一個圖形界面的管理工具,稱為 Internet服務(wù)管理器钮热,可用于監(jiān)視配置和控制Internet服務(wù)填抬。
IIS是一種Web服務(wù)組件,當(dāng)中包含Webserver隧期、FTPserver飒责、NNTPserver和SMTPserver,分別用于網(wǎng)頁瀏覽仆潮、文件傳輸宏蛉、新聞服務(wù)和郵件發(fā)送等方面,它使得在網(wǎng)絡(luò)(包含互聯(lián)網(wǎng)和局域網(wǎng))上公布信息成了一件非常easy的事性置。它提供ISAPI(Intranet Server API)作為擴(kuò)展Webserver功能的編程接口;同一時候拾并,它還提供一個Internet數(shù)據(jù)庫連接器,能夠?qū)崿F(xiàn)對數(shù)據(jù)庫的查詢和更新鹏浅。
APACHE
apache仍然是世界上用的最多的Webserver辟灰,市場占有率達(dá)60%左右。它源于NCSAhttpdserver篡石,當(dāng)NCSA WWWserver項目停止后芥喇,那些使用NCSA WWWserver的人們開始交換用于此server的補(bǔ)丁,這也是apache名稱的由來(pache 補(bǔ)丁)凰萨。世界上非常多著名的站點都是Apache的產(chǎn)物继控,它的成功之處主要在于它的源碼開放械馆、有一支開放的開發(fā)隊伍、支持跨平臺的應(yīng)用(能夠執(zhí)行在差點兒全部的Unix武通、Windows霹崎、Linux系統(tǒng)平臺上)以及它的可移植性等方面。
Tomcat
Tomcat是一個開放源碼冶忱、執(zhí)行servlet和JSP Web應(yīng)用軟件的基于Java的Web應(yīng)用軟件容器尾菇。Tomcat Server是依據(jù)servlet和JSP規(guī)范進(jìn)行執(zhí)行的,因此我們就能夠說Tomcat Server也實行了Apache-Jakarta規(guī)范且比絕大多數(shù)商業(yè)應(yīng)用軟件server要好囚枪。
Tomcat是Java Servlet 2.2和JavaServer Pages 1.1技術(shù)的標(biāo)準(zhǔn)實現(xiàn)派诬,是基于Apache許可證下開發(fā)的自由軟件。Tomcat是全然重寫的Servlet API 2.2和JSP 1.1兼容的Servlet/JSP容器链沼。Tomcat使用了JServ的一些代碼默赂,特別是Apache服務(wù)適配器。隨著Catalina Servlet引擎的出現(xiàn)括勺,Tomcat第四版號的性能得到提升缆八,使得它成為一個值得考慮的Servlet/JSP容器,因此眼下很多WEBserver都是採用Tomcat疾捍。
眼下奈辰,很多大型Web應(yīng)用一般將Apache和Tomcat結(jié)合使用,Apache負(fù)責(zé)接收用戶的HTTP請求乱豆,假設(shè)請求是Servlet奖恰、Jsp,則把請求轉(zhuǎn)發(fā)給Tomcat處理咙鞍,并將處理結(jié)果封裝響應(yīng)給用戶。