2024年WEB服務(wù)器實(shí)驗(yàn)報(bào)告_第1頁
2024年WEB服務(wù)器實(shí)驗(yàn)報(bào)告_第2頁
2024年WEB服務(wù)器實(shí)驗(yàn)報(bào)告_第3頁
2024年WEB服務(wù)器實(shí)驗(yàn)報(bào)告_第4頁
2024年WEB服務(wù)器實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

WEB服務(wù)器試驗(yàn)匯報(bào)一、什么是WEB服務(wù)器WEB服務(wù)器也稱為WWW(WORLDWIDEWEB)服務(wù)器,重要功能是提供網(wǎng)上信息瀏覽服務(wù)。(1)應(yīng)用層使用HTTP協(xié)議。(2)HTML文檔格式。(3)瀏覽器統(tǒng)一資源定位器(URL)。WWW代表萬維網(wǎng)的意思WWW是Internet的多媒體信息查詢工具,是Internet上近年才發(fā)展起來的服務(wù),也是發(fā)展最快和目前用的最廣泛的服務(wù)。正是由于有了WWW工具,才使得近年來Internet迅速發(fā)展,且顧客數(shù)量飛速增長。1、WWW簡介WWW是WorldWideWeb(環(huán)球信息網(wǎng))的縮寫,也可以簡稱為Web,中文名字為“萬維網(wǎng)”。它來源于1989年3月,由歐洲量子物理試驗(yàn)室CERN(theEuropeanLaboratoryforParticlePhysics)所發(fā)展出來的主從構(gòu)造分布式超媒體系統(tǒng)。通過萬維網(wǎng),人們只要通過使用簡樸的措施,就可以很迅速以便地獲得豐富的信息資料。由于顧客在通過Web瀏覽器訪問信息資源的過程中,無需再關(guān)懷某些技術(shù)性的細(xì)節(jié),并且界面非常友好,因而Web在Internet上一推出就受到了熱烈的歡迎,走紅全球,并迅速得到了爆炸性的發(fā)展。2、WWW的發(fā)展和特點(diǎn)長期以來,人們只是通過老式的媒體(如電視、報(bào)紙、雜志和廣播等)獲得信息。但伴隨計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展,人們想要獲取信息,已不再滿足于老式媒體那種單方面?zhèn)鞑ズ瞳@取的方式,而但愿有一種主觀的選擇性。目前,網(wǎng)絡(luò)上提供多種類別的數(shù)據(jù)庫系統(tǒng),如文獻(xiàn)期刊、產(chǎn)業(yè)信息、氣象信息、論文檢索等等。由于計(jì)算機(jī)網(wǎng)絡(luò)的發(fā)展,信息的獲取變得非常及時(shí)、迅速和便捷。到了1993年,WWW的技術(shù)有了突破性的進(jìn)展,它處理了遠(yuǎn)程信息服務(wù)中的文字顯示、數(shù)據(jù)連接以及圖像傳遞的問題,使得WWW成為Internet上最為流行的信息傳播方式。目前,Web服務(wù)器成為Internet上最大的計(jì)算機(jī)群,Web文檔之多、鏈接的網(wǎng)絡(luò)之廣,令人難以想象??梢哉f,Web為Internet的普及邁出了開創(chuàng)性的一步,是近年來Internet上獲得的最激感人心的成就。WWW采用的是客戶/服務(wù)器構(gòu)造,其作用是整頓和儲(chǔ)存多種WWW資源,并響應(yīng)客戶端軟件的祈求,把客戶所需的資源傳送到Windows95(或Windows98)、WindowsNT、UNIX或Linux等平臺(tái)上。使用最多的webserver服務(wù)器軟件有兩個(gè):微軟的信息服務(wù)器(iis),和Apache。通俗的講,Web服務(wù)器傳送(serves)頁面使瀏覽器可以瀏覽,然而應(yīng)用程序服務(wù)器提供的是客戶端應(yīng)用程序可以調(diào)用(call)的措施(methods)。確切一點(diǎn),你可以說:Web服務(wù)器專門處理HTTP祈求(request),不過應(yīng)用程序服務(wù)器是通過諸多協(xié)議來為應(yīng)用程序提供(serves)商業(yè)邏輯(businesslogic)。Web服務(wù)器可以解析(handles)HTTP協(xié)議。當(dāng)Web服務(wù)器接受到一種HTTP祈求(request),會(huì)返回一種HTTP響應(yīng)(response),例如送回一種HTML頁面。為了處理一種祈求(request),Web服務(wù)器可以響應(yīng)(response)一種靜態(tài)頁面或圖片,進(jìn)行頁面跳轉(zhuǎn)(redirect),或者把動(dòng)態(tài)響應(yīng)(dynamicresponse)的產(chǎn)生委托(delegate)給某些其他的程序例如CGI腳本,JSP(JavaServerPages)腳本,servlets,ASP(ActiveServerPages)腳本,服務(wù)器端(server-side)JavaScript,或者某些其他的服務(wù)器端(server-side)技術(shù)。無論它們(譯者注:腳本)的目的怎樣,這些服務(wù)器端(server-side)的程序一般產(chǎn)生一種HTML的響應(yīng)(response)來讓瀏覽器可以瀏覽。要懂得,Web服務(wù)器的代理模型(delegationmodel)非常簡樸。當(dāng)一種祈求(request)被送到Web服務(wù)器裏來時(shí),它只單純的把祈求(request)傳遞給可以很好的處理祈求(request)的程序(譯者注:服務(wù)器端腳本)。Web服務(wù)器僅僅提供一種可以執(zhí)行服務(wù)器端(server-side)程序和返回(程序所產(chǎn)生的)響應(yīng)(response)的環(huán)境,而不會(huì)超過職能范圍。服務(wù)器端(server-side)程序一般具有事務(wù)處理(transactionprocessing),數(shù)據(jù)庫連接(databaseconnectivity)和消息(messaging)等功能。雖然Web服務(wù)器不支持事務(wù)處理或數(shù)據(jù)庫連接池,但它可以配置(employ)多種方略(strategies)來實(shí)現(xiàn)容錯(cuò)性(faulttolerance)和可擴(kuò)展性(scalability),例如負(fù)載平衡(loadbalancing),緩沖(caching)。集群特性(clustering—features)常常被誤認(rèn)為僅僅是應(yīng)用程序服務(wù)器專有的特性。應(yīng)用程序服務(wù)器(TheApplicationServer)根據(jù)我們的定義,作為應(yīng)用程序服務(wù)器,它通過多種協(xié)議,可以包括HTTP,把商業(yè)邏輯暴露給(expose)客戶端應(yīng)用程序。Web服務(wù)器重要是處理向?yàn)g覽器發(fā)送HTML以供瀏覽,而應(yīng)用程序服務(wù)器提供訪問商業(yè)邏輯的途徑以供客戶端應(yīng)用程序使用。應(yīng)用程序使用此商業(yè)邏輯就象你調(diào)用對象的一種措施(或過程語言中的一種函數(shù))同樣。應(yīng)用程序服務(wù)器的客戶端(包具有圖形顧客界面(GUI)的)也許會(huì)運(yùn)行在一臺(tái)PC、一種Web服務(wù)器或者甚至是其他的應(yīng)用程序服務(wù)器上。在應(yīng)用程序服務(wù)器與其客戶端之間來回穿梭(traveling)的信息不僅僅局限于簡樸的顯示標(biāo)識(shí)。相反,這種信息就是程序邏輯(programlogic)。正是由于這種邏輯獲得了(takes)數(shù)據(jù)和措施調(diào)用(calls)的形式而不是靜態(tài)HTML,因此客戶端才可以隨心所欲的使用這種被暴露的商業(yè)邏輯。在大多數(shù)情形下,應(yīng)用程序服務(wù)器是通過組件(component)的應(yīng)用程序接口(API)把商業(yè)邏輯暴露(expose)(給客戶端應(yīng)用程序)的,例如基于J2EE(Java2Platform,EnterpriseEdition)應(yīng)用程序服務(wù)器的EJB(EnterpriseJavaBean)組件模型。此外,應(yīng)用程序服務(wù)器可以管理自已的資源,例如看大門的工作(gate-keepingduties)包括安全(security),事務(wù)處理(transactionprocessing),資源池(resourcepooling),和消息(messaging)。就象Web服務(wù)器同樣,應(yīng)用程序服務(wù)器配置了多種可擴(kuò)展(scalability)和容錯(cuò)(faulttolerance)技術(shù)。例如,設(shè)想一種在線商店(網(wǎng)站)提供實(shí)時(shí)定價(jià)(real-timepricing)和有效性(availability)信息。這個(gè)站點(diǎn)(site)很也許會(huì)提供一種表單(form)讓你來選擇產(chǎn)品。當(dāng)你提交查詢(query)後,網(wǎng)站會(huì)進(jìn)行查找(lookup)并把成果內(nèi)嵌在HTML頁面中返回。網(wǎng)站可以有諸多種方式來實(shí)現(xiàn)這種功能。我要簡介一種不使用應(yīng)用程序服務(wù)器的情景和一種使用應(yīng)用程序服務(wù)器的情景。觀測一下這兩中情景的不一樣會(huì)有助于你理解應(yīng)用程序服務(wù)器的功能。情景1:不帶應(yīng)用程序服務(wù)器的Web服務(wù)器在此種情景下,一種Web服務(wù)器獨(dú)立提供在線商店的功能。Web服務(wù)器獲得你的祈求(request),然後發(fā)送給服務(wù)器端(server-side)可以處理祈求(request)的程序。此程序從數(shù)據(jù)庫或文本文獻(xiàn)(flatfile,譯者注:flatfile是指沒有特殊格式的非二進(jìn)制的文獻(xiàn),如properties和XML文獻(xiàn)等)中查找定價(jià)信息。一旦找到,服務(wù)器端(server-side)程序把成果信息表到達(dá)(formulate)HTML形式,最終Web服務(wù)器把會(huì)它發(fā)送到你的Web瀏覽器。簡而言之,Web服務(wù)器只是簡樸的通過響應(yīng)(response)HTML頁面來處理HTTP祈求(request)。情景2:帶應(yīng)用程序服務(wù)器的Web服務(wù)器情景2和情景1相似的是Web服務(wù)器還是把響應(yīng)(response)的產(chǎn)生委托(delegates)給腳本(譯者注:服務(wù)器端(server-side)程序)。然而,你可以把查找定價(jià)的商業(yè)邏輯(businesslogic)放到應(yīng)用程序服務(wù)器上。由于這種變化,此腳本只是簡樸的調(diào)用應(yīng)用程序服務(wù)器的查找服務(wù)(lookupservice),而不是已經(jīng)懂得怎樣查找數(shù)據(jù)然後表達(dá)為(formulate)一種響應(yīng)(response)。這時(shí)當(dāng)該腳本程序產(chǎn)生HTML響應(yīng)(response)時(shí)就可以使用該服務(wù)的返回成果了。在此情景中,應(yīng)用程序服務(wù)器提供(serves)了用于查詢產(chǎn)品的定價(jià)信息的商業(yè)邏輯。(服務(wù)器的)這種功能(functionality)沒有指出有關(guān)顯示和客戶端怎樣使用此信息的細(xì)節(jié),相反客戶端和應(yīng)用程序服務(wù)器只是來回傳送數(shù)據(jù)。當(dāng)有客戶端調(diào)用應(yīng)用程序服務(wù)器的查找服務(wù)(lookupservice)時(shí),此服務(wù)只是簡樸的查找并返回成果給客戶端。通過從響應(yīng)產(chǎn)生(response-generating)HTML的代碼中分離出來,在應(yīng)用程序之中該定價(jià)(查找)邏輯的可重用性更強(qiáng)了。其他的客戶端,例如收款機(jī),也可以調(diào)用同樣的服務(wù)(service)來作為一種店員給客戶結(jié)帳。相反,在情景1中的定價(jià)查找服務(wù)是不可重用的由于信息內(nèi)嵌在HTML頁中了。綜上所述,在情景2的模型中,在Web服務(wù)器通過回應(yīng)HTML頁面來處理HTTP祈求(request),而應(yīng)用程序服務(wù)器則是通過處理定價(jià)和有效性(availability)祈求(request)來提供應(yīng)用程序邏輯的。警告(Caveats)目前,XMLWebServices已經(jīng)使應(yīng)用程序服務(wù)器和Web服務(wù)器的界線混淆了。通過傳送一種XML有效載荷(payload)給服務(wù)器,Web服務(wù)器目前可以處理數(shù)據(jù)和響應(yīng)(response)的能力與此前的應(yīng)用程序服務(wù)器同樣多了。此外,目前大多數(shù)應(yīng)用程序服務(wù)器也包括了Web服務(wù)器,這就意味著可以把Web服務(wù)器當(dāng)作是應(yīng)用程序服務(wù)器的一種子集(subset)。雖然應(yīng)用程序服務(wù)器包括了Web服務(wù)器的功能,不過開發(fā)者很少把應(yīng)用程序服務(wù)器布署(deploy)成這種功能(capacity)(譯者注:這種功能是指既有應(yīng)用程序服務(wù)器的功能又有Web服務(wù)器的功能)。相反,假如需要,他們一般會(huì)把Web服務(wù)器獨(dú)立配置,和應(yīng)用程序服務(wù)器一前一後。這種功能的分離有助于提高性能(簡樸的Web祈求(request)就不會(huì)影響應(yīng)用程序服務(wù)器了),分開配置(專門的Web服務(wù)器,集群(clustering)等等),并且給最佳產(chǎn)品的選用留有余地。二、合用的web服務(wù)器小的應(yīng)用程序可以直接記住,系統(tǒng)地、嚴(yán)密地加以考慮,以證明它們的安全性或可伸縮性。小型Web服務(wù)器包括:

CheetahServer,用不到一仟行的C代碼編寫而成。

DustMote,一種非常小的Web服務(wù)器,用一種大概3000字節(jié)的Tcl源文獻(xiàn)實(shí)現(xiàn)。

fnord,大小取決于平臺(tái)和配置,不超過20K。雖然很小,不過它支持虛擬主機(jī)、CGI和keep-alive。

ihttpd,使用不到800行的C代碼,包括CGI,并通過inetd提供頁面。

im-httpd,非常小的服務(wù)器——只有大概7KB,鏈接到glibc。并且它也非??臁?/p>

mattows,支持CGI,只有600行C代碼。

Scrinchy,雖然很小,不到30KB,不過支持多種腳本編制語言,包括一種特殊用途的、基于棧的Sy腳本語言。

ZWS演示了一種雖然是使用500多行帶足夠注釋的zsh(!)編寫的應(yīng)用程序——在這裏是一種HTTP0.9+服務(wù)器——也可以有多強(qiáng)大。體積小并不阻礙這些服務(wù)器被正式使用。例如,fnord可以處理數(shù)仟個(gè)同步進(jìn)行的連接。

也許輕量級(jí)作為一種類別最令人印象深刻的成就是高性能服務(wù)器:

cghttpd是一種小型Web服務(wù)器,它被理解為使用2.6系列內(nèi)核中可用的異步功能的一種試驗(yàn)品。

darkhttpd是一種迅速的、單線程的HTTP/1.1服務(wù)器。

Gatling是為高性能設(shè)計(jì)的。它的特性包括FTP、IPv6、虛擬主機(jī)、CGI等。

Kernux是一種Linux內(nèi)核模塊,它實(shí)現(xiàn)了一種HTTP守護(hù)進(jìn)程。

lighttpd是使用率排名第五的Web服務(wù)器(排名還在上升)。它為諸多同步進(jìn)行的連接進(jìn)行了優(yōu)化:“經(jīng)典的場景是使用lighttpd作為一種下載(off-load)服務(wù)器,以提供靜態(tài)內(nèi)容……”

LiteSpeedWebServer是一款輕量級(jí)商業(yè)Web服務(wù)器,強(qiáng)調(diào)性能和安全性。LiteSpeedTechnologies企業(yè)宣傳為靜態(tài)內(nèi)容提速了6倍,在解釋頁面方面也有一定的提高。

MiniatureJWS,也稱tjws,它是基于Java的Web服務(wù)器,可以處理servlet、JSP和數(shù)仟個(gè)并發(fā)連接,而大小只有77KB。它的作者聲稱它“比Apache2.x快10%”。

Yaws是用Erlang編寫的一款高性能HTTP/1.1服務(wù)器。

有些Web服務(wù)器被實(shí)現(xiàn)為類或庫,以便嵌入到較大的應(yīng)用程序中。在這些Web服務(wù)器當(dāng)中,我發(fā)現(xiàn)尤其有趣的有:

EHS——“嵌入式HTTP服務(wù)器”,被設(shè)計(jì)為一種C++類,用于嵌入到較大的C++應(yīng)用程序;尚有

EmbeddedTCLWebServer,它是一種很一般的Web服務(wù)器,支持SSL和BasicAuthentication,速度非??臁渥髡呤顾辽倥clighthttpd和AOLserver同樣快。它是用不到100行Tcl編寫的。

Python是幾種適合不尋常環(huán)境的Web服務(wù)器的實(shí)現(xiàn)語言,這些Web服務(wù)器包括:

cdServer是一種小型的、用Python編寫的HTTP服務(wù)器,它“被設(shè)計(jì)用來提供來自CD-ROM的(靜態(tài))內(nèi)容”。它在提供動(dòng)態(tài)內(nèi)容方面能力有限。我們有幾種波及不受影響的“l(fā)iveCDs”的項(xiàng)目,在這些項(xiàng)目中像cdServer之類的工具很關(guān)鍵。

edna,一款智能的用Python編寫的MP3服務(wù)器,它是用HTTP實(shí)現(xiàn)的。

尚有其他某些用Perl和其他不出名的語言編寫的輕量級(jí)Web服務(wù)器:

Camlserv,用ocaml編寫的一種完整的Web服務(wù)器,目的是“高度交互式的Web頁面”。它由幾仟行ocaml編寫而成,其中大部分代碼都與MySQL和HTML的特殊處理有關(guān)。

dhttpd用和Apache相似的格式記錄訪問。它支持CGI,并具有內(nèi)建的Perl解釋器、虛擬主機(jī)、IPv6、帶寬管理和安全性等方面的特性。

DNHTTPD是用Perl編寫的,用于UNIX。它支持虛擬主機(jī)、SSL連接、CGI等。

Jellybean是用Perl編寫的基于HTTP的PerlObjectServer。

lns.http是一種CommonLISPHTTP/1.1Web框架。

Mongrel是用Ruby編寫的、用于HTTP的一種庫和服務(wù)器。

Nanoweb是用PHP編寫的一款迅速、強(qiáng)健的Web服務(wù)器。它宣稱具有豐富的特性,包括完全遵從HTTP/1.1、訪問控制、身份驗(yàn)證、虛擬主機(jī)、SSL兼容性等。

Naridesh是用Perl編寫的Web服務(wù)器。

OpenAngel是用Perl編寫的。它強(qiáng)調(diào)的重點(diǎn)是安全性。

Xavante是用Lua編寫的HTTP/1.1Web服務(wù)器。

XSP是用C#編寫的,用于運(yùn)行ASP.NET。

有時(shí)候您也許需要其他某些用C編寫的、具有不常見的次要優(yōu)勢的輕量級(jí)Web服務(wù)器:

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論