Web 伺服器 vs. 應用程式伺服器

menu icon

Web 伺服器 vs. 應用程式伺服器

瞭解 Web 伺服器和應用程式伺服器的差異、相同之處,以及如何結合來提供您現在使用的大部分應用程式。

Web 伺服器 vs. 應用程式伺服器: 有何不同?

嚴格來說, Web 伺服器通常只是應用程式伺服器的一部分。

Web 伺服器提供靜態 Web 內容,例如 HTML 頁面、檔案、影像、視訊,主要是回應來自 Web 瀏覽器的超文字傳送通訊協定 (HTTP) 要求。

應用程式伺服器通常也可以傳遞 Web 內容,但主要工作是啟用一般使用者用戶端與伺服器端應用程式碼之間的互動,程式碼代表一般所謂的商業邏輯,以產生及傳遞動態內容,例如交易結果、決策支援或即時分析。應用程式伺服器的用戶端可以是應用程式本身的一般使用者使用者介面、 Web 瀏覽器或行動式應用程式,而用戶端與伺服器之間的互動可以透過許多種通訊協定進行。

但實際上, Web 伺服器與應用程式伺服器之間的區別已變得模糊,主要是因為 Web 瀏覽器已成為首選的應用程式用戶端,而且使用者對 Web 應用程式及其效能的期望更高。

大部分 Web 伺服器支援 Script 語言,例如 ASP、JSP、PHP、Perl 外掛程式,這讓 Web 伺服器能夠根據伺服器端邏輯產生動態內容。 越來越多的應用程式伺服器不僅包含 Web 伺服器功能,而且與 Web 伺服器互動時以 HTTP 為主要通訊協定,並支援其他通訊協定,例如 CGI 及 CGI 改編版本。 另外還可讓 Web 應用程式使用反向 Proxy、叢集、備援及負載平衡等服務來改善效能和可靠性,讓開發人員不必擔心基礎架構,而更專注於程式碼。

許多 Web 伺服器和一些應用程式伺服器本身被說成 Web 應用程式伺服器,於是更混淆不清。

總之,時下最受歡迎的 Web 伺服器和應用程式伺服器已混為一談。 當前日益豐富的應用程式中,大部分都透過 Web 伺服器和應用程式伺服器技術,同時提供靜態 Web 內容與動態應用程式內容。

開放程式碼 Web 伺服器和應用程式伺服器

Web 伺服器和應用程式伺服器充斥市場 ,族繁不及備載。 列出最受歡迎的免費開放程式碼選項即可,這樣比較實用:

Nginx

Nginx(IBM 外部鏈結)是開放原始碼 Web 伺服器,涵蓋反向 Proxy、負載平衡、郵件 Proxy 及 HTTP 快取功能。 Nginx, Inc.(IBM 外部鏈結)還推出支援的商業版 Nginx。根據網際網路研究和網路犯罪預防公司 Netcraft(IBM 外部鏈結)的調查,截至 2019 年 12 月,Nginx 服務或代理將近 38% 的全球所有網站,超過 25% 的數百萬個最繁忙網站。 世界知名的企業 Nginx 使用者包括 Dropbox、Netflix 和 Zynga。

Apache HTTP 伺服器

Apache HTTP 伺服器,簡稱為 Apache,於 1995 年首次推出,是另一個非常受歡迎的免費開放原始碼 Web 伺服器,直到最近所支援的網站數量勝過任何其他 Web 伺服器,最高曾達到 71%,在 2019 年 4 月才被 Nginx 超越。 截至 2019 年 12 月,Apache 服務超過 24% 的全球所有網站和 31% 的數百萬個最繁忙網站。

Apache Tomcat

Apache Tomcat(IBM 外部鏈結)是開放原始碼應用程式伺服器,可執行 Java Servlet ,呈現並傳遞含有 JavaServer Page 程式碼的網頁,並服務 Java Enterprise Edition (Java EE) 應用程式。 Tomcat 於 1998 年發行,是最廣泛使用的開放原始碼 Java 應用程式伺服器。

Glassfish

Glassfish(位於 IBM 外部鏈結)是 Sun Microsystems 在 2006 年推出的開放原始碼 Java EE 應用程式伺服器,目前由 Eclipse Foundation(IBM 外部鏈結)代管。 與大部分 Java 應用程式伺服器一樣,Glassfish 支援 Java Servlet、 Enterprise JavaBeans (EJB) 等等,但也可以作為 Web 伺服器,提供 Web 內容來回應 HTTP 要求。

Web 伺服器、應用程式伺服器及 IBM Cloud®

由於需要更好的客戶體驗及更多應用程式,深刻影響著商業和 IT 的運作,在應用程式現代化過程中,Web 伺服器和應用程式伺服器仍將不可或缺。 為了滿足這些需求,邁向更高自動化是解決之道。 建議從有把握成功的小型專案開始,然後針對其他流程和組織的其他部分,將專案擴充與最佳化。

只要與 IBM 合作,就能享有 AI 支援的自動化功能,包括預先建置的工作流程,讓每個程序變得更有智慧,加速創新。

進行下一步:

立即開始使用 IBM Cloud 帳戶