簡(jiǎn)述:web服務(wù)器和應(yīng)用程序服務(wù)器的關(guān)系有兩種情形:1、不帶應(yīng)用程序服務(wù)器的Web服務(wù)器在此種情形下,一個(gè)Web服務(wù)器獨(dú)立提供在線商店的功能。Web服務(wù)器獲得你的請(qǐng)求(request),然后發(fā)送給服務(wù)器端(
web服務(wù)器和應(yīng)用程序服務(wù)器的關(guān)系有兩種情形:
1、不帶應(yīng)用程序服務(wù)器的Web服務(wù)器
在此種情形下,一個(gè)Web服務(wù)器獨(dú)立提供在線商店的功能。Web服務(wù)器獲得你的請(qǐng)求(request),然后發(fā)送給服務(wù)器端(server-side)可以處理請(qǐng)求(request)的程序。此程序從數(shù)據(jù)庫或文本文件(flat file,譯者注:flat file是指沒有特殊格式的非二進(jìn)制的文件,如properties和XML文件等)中查找定價(jià)信息。一旦找到,服務(wù)器端(server-side)程序把結(jié)果信息表示成(formulate)HTML形式,最后Web服務(wù)器把會(huì)它發(fā)送到你的Web瀏覽器。
簡(jiǎn)而言之,Web服務(wù)器只是簡(jiǎn)單的通過響應(yīng)(response)HTML頁面來處理HTTP請(qǐng)求(request)。
2、帶應(yīng)用程序服務(wù)器的Web服務(wù)器
情形2和情形1相同的是Web服務(wù)器還是把響應(yīng)(response)的產(chǎn)生委托(delegates)給腳本(譯者注:服務(wù)器端(server-side)程序)。然而,你可以把查找定價(jià)的商業(yè)邏輯(business logic)放到應(yīng)用程序服務(wù)器上。由于這種變化,此腳本只是簡(jiǎn)單的調(diào)用應(yīng)用程序服務(wù)器的查找服務(wù)(lookup service),而不是已經(jīng)知道如何查找數(shù)據(jù)然后表示為(formulate)一個(gè)響應(yīng)(response)。 這時(shí)當(dāng)該腳本程序產(chǎn)生HTML響應(yīng)(response)時(shí)就可以使用該服務(wù)的返回結(jié)果了。
在此情形中,應(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ù)(lookup service)時(shí),此服務(wù)只是簡(jiǎn)單的查找并返回結(jié)果給客戶端。
通過從響應(yīng)產(chǎn)生(response-generating)HTML的代碼中分離出來,在應(yīng)用程序之中該定價(jià)(查找)邏輯的可重用性更強(qiáng)了。其他的客戶端,例如收款機(jī),也可以調(diào)用同樣的服務(wù)(service)來作為一個(gè)店員給客戶結(jié)帳。相反,在情景1中的定價(jià)查找服務(wù)是不可重用的因?yàn)樾畔?nèi)嵌在HTML頁中了。
總之,在情景2的模型中,在Web服務(wù)器通過回應(yīng)HTML頁面來處理HTTP請(qǐng)求(request),而應(yīng)用程序服務(wù)器則是通過處理定價(jià)和有效性(availability)請(qǐng)求(request)來提供應(yīng)用程序邏輯的。
現(xiàn)在,XML Web Services已經(jīng)使應(yīng)用程序服務(wù)器和Web服務(wù)器的界線混淆了。通過傳送一個(gè)XML有效載荷(payload)給服務(wù)器,Web服務(wù)器現(xiàn)在可以處理數(shù)據(jù)和響應(yīng)(response)的能力與以前的應(yīng)用程序服務(wù)器同樣多了。
另外,現(xiàn)在大多數(shù)應(yīng)用程序服務(wù)器也包含了Web服務(wù)器,這就意味著可以把Web服務(wù)器當(dāng)作是應(yīng)用程序服務(wù)器的一個(gè)子集(subset)。雖然應(yīng)用程序服務(wù)器包含了Web服務(wù)器的功能,但是開發(fā)者很少把應(yīng)用程序服務(wù)器部署(deploy)成這種功能(capacity)(譯者注:這種功能是指既有應(yīng)用程序服務(wù)器的功能又有Web服務(wù)器的功能)。相反,如果需要,他們通常會(huì)把Web服務(wù)器獨(dú)立配置,和應(yīng)用程序服務(wù)器一前一后。這種功能的分離有助于提高性能(簡(jiǎn)單的Web請(qǐng)求(request)就不會(huì)影響應(yīng)用程序服務(wù)器了),分開配置(專門的Web服務(wù)器,集群(clustering)等等),而且給最佳產(chǎn)品的選取留有余地。
本文由專業(yè)服務(wù)器托管——騰佑科技(http://www.mubashirfilms.com/)提供。
搜索詞
熱門產(chǎn)品推薦