這是一個(gè)詳細(xì)的答案,并給出了一些方案,以清楚地理解兩者之間的區(qū)別、相似之處以及兩者是如何結(jié)合工作的。
應(yīng)用服務(wù)器是一個(gè)有時(shí)與Web服務(wù)器..而web服務(wù)器主要處理HTTP協(xié)議,應(yīng)用程序服務(wù)器處理幾種不同的協(xié)議,包括,但是不限于HTTP.
Web服務(wù)器的主要工作是顯示網(wǎng)站內(nèi)容應(yīng)用服務(wù)器是負(fù)責(zé)邏輯,用戶(hù)與顯示的內(nèi)容之間的交互。應(yīng)用服務(wù)器是協(xié)同工作與Web服務(wù)器,其中一個(gè)顯示和另一個(gè)交互。
在服務(wù)器和客戶(hù)端之間來(lái)回傳輸?shù)男畔⒉幌抻诤?jiǎn)單的顯示標(biāo)記,而是兩者之間的交互。
在大多數(shù)情況下,服務(wù)器會(huì)創(chuàng)建以下內(nèi)容通過(guò)組件API進(jìn)行交互,如J2EE(Java 2平臺(tái)), EJB(企業(yè)JavaBean)以及其他不同的應(yīng)用軟件模型。
例如:
了解應(yīng)用程序服務(wù)器與沒(méi)有應(yīng)用服務(wù)器的場(chǎng)景之間的區(qū)別的最好方法是通過(guò)在線(xiàn)商店。
場(chǎng)景1:沒(méi)有應(yīng)用服務(wù)器的Web服務(wù)器
您有一個(gè)只有Web服務(wù)器而沒(méi)有應(yīng)用服務(wù)器的在線(xiàn)商店。該網(wǎng)站將提供一個(gè)顯示,您可以從中選擇一個(gè)產(chǎn)品。提交查詢(xún)時(shí),站點(diǎn)執(zhí)行查找并將HTML結(jié)果返回給其客戶(hù)端。Web服務(wù)器將您的查詢(xún)直接發(fā)送到數(shù)據(jù)庫(kù)服務(wù)器(請(qǐng)耐心,我將在下一個(gè)單元中解釋這個(gè)查詢(xún)),并等待響應(yīng)。一旦收到,Web服務(wù)器就會(huì)將響應(yīng)公式化為HTML文件,并將其發(fā)送給您的Web瀏覽器。每次運(yùn)行查詢(xún)時(shí),服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器之間的來(lái)回通信都會(huì)發(fā)生。
場(chǎng)景2:帶有應(yīng)用服務(wù)器的Web服務(wù)器
如果您想要運(yùn)行的查詢(xún)已經(jīng)完成,而且此后沒(méi)有數(shù)據(jù)更改,服務(wù)器將生成結(jié)果,而不必將請(qǐng)求發(fā)送到數(shù)據(jù)庫(kù)服務(wù)器。這允許實(shí)時(shí)查詢(xún),第二個(gè)客戶(hù)端可以訪(fǎng)問(wèn)相同的信息并接收實(shí)時(shí)、可靠的信息,而無(wú)需向數(shù)據(jù)庫(kù)服務(wù)器發(fā)送另一個(gè)重復(fù)的查詢(xún)。服務(wù)器基本上充當(dāng)數(shù)據(jù)庫(kù)服務(wù)器和Web服務(wù)器之間的中間層。這允許在第一個(gè)場(chǎng)景中提取的信息是可重用的,因?yàn)檫@個(gè)信息嵌入在一個(gè)特定的“自定義”HTML頁(yè)面中,這不是一個(gè)可重用的過(guò)程。第二個(gè)客戶(hù)端將不得不再次請(qǐng)求信息,并接收另一個(gè)HTML嵌入頁(yè)面與所要求的信息-效率很低。更不用說(shuō)這種類(lèi)型的服務(wù)器非常靈活,因?yàn)樗軌蚬芾碜约旱馁Y源,包括安全、事務(wù)處理、消息傳遞和資源池。
為了支持如此復(fù)雜的任務(wù),這個(gè)服務(wù)器必須具有內(nèi)置的冗余、強(qiáng)大的處理能力和大量的RAM來(lái)實(shí)時(shí)處理所有的數(shù)據(jù)。
希望這能幫上忙。