香港服務器web服務器和app服務器有什么區(qū)別
簡單來說,web服務器提供頁面給瀏覽器,而app服務器提供客戶端可以調用的接口。 web服務器處理HTTP協(xié)議。當收到一個HTTP請求之后,web服務器會返回一個HTTP響應,比如一個HTML頁面。為了處理請求,它可能響應一個靜態(tài)的HTML頁面、圖片、重定向,或者代理(delegate)其他動態(tài)響應。這些動態(tài)響應可以由其他程序生成,包括CGI腳本,JSPs,servlets,ASPs,服務器端的Javascript,或者其他服務器端技術。而這些服務器端程序響應,大多數時候都表現為HTML頁面,供瀏覽器訪問。eg:
Apache是web服務器,Tomcat是應用(java)服務器,它只是一個servlet容器,是Apache的擴展。Apache用tomcat擴展后既可以解釋java程序(jsp,serverlet)。
不同于web服務器主要發(fā)送用來展示在瀏覽器上的HTML頁面,app服務器為客戶端程序處理應用邏輯方面問題。應用程序使用這些邏輯,就如同調用一個對象的方法(或者面向過程編程中的函數)一樣簡單。
分別舉例子說明:
場景1:web服務器,而非app服務器
在這個場景里,web服務器獨自提供在線商店的功能。它接受用戶的請求,交給服務器端程序處理。該服務器端程序通過數據庫,或者純文本,查找到價格信息,然后生成HTML響應,通過web服務器返回給用戶的瀏覽器。
總結來說,web服務器僅需要接受HTTP請求,并響應HTML網頁。
場景2: web服務器 + app服務器
同場景1一樣,web服務器仍然代理腳本生成的響應。但是你可以把業(yè)務邏輯部署在app服務器上。這樣,腳本就不需要去關注怎樣查詢和生成響應,而僅需要調用app服務器提供查詢服務,從而利用其生成它的HTML響應。
在這個例子中,app服務器提供了價格查詢的業(yè)務邏輯。這個邏輯不應該包含怎樣去展示,或者強迫客戶端使用這些數據。相反的是,客戶端和app服務器進行交互,只有當客戶端調用了app服務器的價格查詢服務的時候,該服務才查找到信息并返回。
同HTML代碼生成分離開后,價格查詢邏輯的復用性提高了。另外一個客戶端,比如收銀機,同樣可以調用這個接口。而場景1里,價格查詢服務就很難被重用,因為它和HTML頁面緊密聯系。 總結來說,第二個場景中,web服務器處理HTTP請求,并返回HTML頁面,而app服務器處理業(yè)務邏輯。
注意事項:
1.近來,XML web服務器模糊了app服務器和web服務器的界限。發(fā)送一個XML請求給web服務器,web服務器可以像過去的app服務器一樣,處理數據并返回響應。
2.另外,很多app服務器包含web服務器,這就意味著你可以把web服務器看做app服務器的一個子集。雖然app服務器包含web服務器的功能,但是開發(fā)者還是很少以此身份發(fā)布app服務器。如果需要的話,他們通常將web服務器和app服務器分離開。這樣的目的是,性能(簡單的web請求不會影響到app服務器的性能)、發(fā)布配置(專用的web服務器,集群等)、更好的廠商選擇。
USA-IDC特推出香港服務器租用折扣,先抽券后下單,售完即止歡迎點擊下圖了解詳情