Web服務(wù)器是怎樣被應(yīng)用服務(wù)器收編的?

2022-10-11    分類(lèi): 網(wǎng)站建設(shè)

在傳統(tǒng) Web 應(yīng)用的多層架構(gòu)中,系統(tǒng)一般會(huì)包括有負(fù)載均衡器、Web 服務(wù)器、應(yīng)用服務(wù)器等多個(gè)后端服務(wù)。其中,Web 服務(wù)器和應(yīng)用服務(wù)器常常被人視為一個(gè)整體,但其實(shí)從工作原理上來(lái)說(shuō)兩者還是有一定區(qū)分的。

Web服務(wù)器是怎樣被應(yīng)用服務(wù)器收編的?

Web Server

Web 服務(wù)器的基本功能就是提供 Web 信息瀏覽服務(wù)。它支持 HTTP 協(xié)議、HTML 文檔格式及 URL,專(zhuān)門(mén)處理 HTTP 請(qǐng)求(request),可與客戶(hù)側(cè)的網(wǎng)絡(luò)瀏覽器配合。它所提供的是一個(gè)可以執(zhí)行服務(wù)器端(server-side)程序和返回(程序所產(chǎn)生的)響應(yīng)(response)的環(huán)境。

Web 服務(wù)器在 web 頁(yè)面處理上的步驟如下:

1. Web 瀏覽器向一個(gè)特定的服務(wù)器發(fā)出 Web 頁(yè)面請(qǐng)求;

2. Web 服務(wù)器接收到 web 頁(yè)面請(qǐng)求后,會(huì)把請(qǐng)求發(fā)至應(yīng)用服務(wù)器處,傳遞給處理請(qǐng)求的程序,以尋找所請(qǐng)求的 web 頁(yè)面;

3. Web 服務(wù)器從應(yīng)用服務(wù)器處接收到所請(qǐng)求的 web 頁(yè)面內(nèi)容,并將結(jié)果返回給客戶(hù)側(cè)的 Web 瀏覽器,由其顯示出來(lái)。

The Application Server

應(yīng)用程序服務(wù)器(簡(jiǎn)稱(chēng)應(yīng)用服務(wù)器)的職能則是讓多個(gè)用戶(hù)可以同時(shí)使用應(yīng)用程序。它提供的是客戶(hù)端應(yīng)用程序可以調(diào)用(call)的方法(methods),并通過(guò)很多協(xié)議來(lái)為應(yīng)用程序提供(serves)商業(yè)邏輯(business logic)。

如果說(shuō) Web 服務(wù)器主要是處理向?yàn)g覽器發(fā)送 HTML 以供瀏覽,那應(yīng)用服務(wù)器就是提供訪(fǎng)問(wèn)商業(yè)邏輯的途徑以供客戶(hù)端應(yīng)用程序使用。應(yīng)用程序使用此商業(yè)邏輯就象調(diào)用對(duì)象的一個(gè)方法 (或過(guò)程語(yǔ)言中的一個(gè)函數(shù))。比如在用戶(hù)中心、結(jié)算中心、支付中心中所涉及到的導(dǎo)航、存儲(chǔ)數(shù)據(jù)、安全認(rèn)證、控制流程,都需要靠應(yīng)用服務(wù)器來(lái)響應(yīng)。

在過(guò)去,兩者之間的功能區(qū)別較為明顯

而如今在大多數(shù)情況下

人們習(xí)慣于把 Web 服務(wù)器歸類(lèi)為

應(yīng)用服務(wù)器的子集

因?yàn)殡S著各自功能項(xiàng)的不斷添加

它們之間的界線(xiàn)早已變得模糊

我們知道,web 頁(yè)面內(nèi)容有靜態(tài)的,也有動(dòng)態(tài)的。靜態(tài)的內(nèi)容,Web 服務(wù)器可以直接將結(jié)果發(fā)回給瀏覽器,對(duì)于動(dòng)態(tài)內(nèi)容,則通常需要交給應(yīng)用服務(wù)器先處理,由應(yīng)用服務(wù)器返回結(jié)果。早期由于受 HTTP 1.0 協(xié)議的局限,web 服務(wù)所提供的頁(yè)面內(nèi)容和圖片服務(wù)大多是靜態(tài)的。后來(lái)隨著CGI功能的添加,意味著可以為每個(gè) web 請(qǐng)求啟動(dòng)一個(gè)進(jìn)程來(lái)產(chǎn)生動(dòng)態(tài)內(nèi)容。例如.NET中最常用的 Web 服務(wù)器是IIS,因?yàn)镮IS 就可以自已解釋處理 ASP、ASP.NET 這兩種微軟的動(dòng)態(tài)網(wǎng)頁(yè)腳本語(yǔ)言。

雖然 Web 服務(wù)器不支持事務(wù)處理或數(shù)據(jù)庫(kù)連接池,但現(xiàn)在由于 HTTP 協(xié)議愈發(fā)成熟,使得 Web 服務(wù)器也變得更加復(fù)雜,擁有了像緩存、安全和 session 管理這些附加功能,它可以處理更高的負(fù)載、更多的并發(fā),并通過(guò)傳送 XML 有效載荷(payload)給服務(wù)器,讓自己具備處理數(shù)據(jù)和響應(yīng)(response)的能力(前提是不需要應(yīng)用服務(wù)器來(lái)處理相關(guān)邏輯)。

就象 Web 服務(wù)器一樣,應(yīng)用服務(wù)器配置了多種容錯(cuò)(fault tolerance)和可擴(kuò)展(scalability)技術(shù),并且傳統(tǒng)的應(yīng)用服務(wù)器也開(kāi)始逐漸嵌入 HTTP 通信等原本屬于 Web 服務(wù)器的功能?,F(xiàn)在大多數(shù)應(yīng)用程序服務(wù)器內(nèi)其實(shí)已經(jīng)包含了 Web 服務(wù)器,這就意味著可以把 Web 服務(wù)器當(dāng)作是應(yīng)用程序服務(wù)器的一個(gè)子集(subset)。不過(guò)在一些復(fù)雜網(wǎng)站的架構(gòu)中,我們還是會(huì)建議將兩者進(jìn)行獨(dú)立配置。畢竟,部分功能的必要分離有助于提高系統(tǒng)的整體性能,并給維護(hù)和升級(jí)留下余地。

本文名稱(chēng):Web服務(wù)器是怎樣被應(yīng)用服務(wù)器收編的?
轉(zhuǎn)載注明:http://www.bm7419.com/news0/204550.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、軟件開(kāi)發(fā)、小程序開(kāi)發(fā)、電子商務(wù)做網(wǎng)站、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站