WEB 服務器、應用程序服務器、HTTP 服務器有何區別?IIS、Apache、Tomcat、Weblogic、WebSphere 都各屬于哪種服務器,這些問題困惑了很久,今天終于梳理清楚了:
? ? ? ?Web 服務器的基本功能就是提供 Web 信息瀏覽服務。它只需支持 HTTP 協議、HTML 文檔格式及 URL。與客戶端的網絡瀏覽器配合。因為 Web 服務器主要支持的協議就是 HTTP,所以通常情況下 HTTP 服務器和 WEB 服務器是相等的 (有沒有支持除 HTTP 之外的協議的 web 服務器,作者沒有考證過),說的是一回事。?
應用程序服務器 (簡稱應用服務器),我們先看一下微軟對它的定義:"我們把應用程序服務器定義為 “作為服務器執行共享業務應用程序的底層的系統軟件”。?就像文件服務器為很多用戶提供文件一樣,應用程序服務器讓多個用戶可以同時使用應用程序(通常是客戶創建的應用程序)"
通俗的講,Web 服務器傳送 (serves) 頁面使瀏覽器可以瀏覽,然而應用程序服務器提供的是客戶端應用程序可以調用 (call) 的方法 (methods)。確切一點,你可以說:Web 服務器專門處理 HTTP 請求 (request),但是應用程序服務器是通過很多協議來為應用程序提供 (serves) 商業邏輯?(business?logic)。
以 Java?EE 為例,Web 服務器主要是處理靜態頁面處理和作為?Servlet 容器,解釋和執行 servlet/JSP,而應用服務器是運行業務邏輯的,主要是 EJB、?JNDI 和 JMX?API 等 J2EE?API 方面的,還包含事務處理、數據庫連接等功能,所以在企業級應用中,應用服務器提供的功能比 WEB 服務器強大的多。
以這樣的定義,IIS、Apache、Tomcat 都可以屬于 Web 服務器,Weblogic、WebSphere 都屬于應用服務器。?