Web 服务器与应用服务器
了解 Web 服务器和应用服务器的不同之处和相同之处,以及如何结合使用它们以交付目前使用的大多数应用。
黑色和蓝色背景
Web 服务器与应用服务器:有何差异?

按照严格的定义,Web 服务器是应用服务器的常见组成部分。

Web 服务器提供静态 Web 内容(例如 HTML 页面、文件、图像、视频),主要用于响应来自 Web 浏览器的超文本传输协议 (HTTP) 请求。

应用服务器通常也提供 Web 内容,但其主要工作是支持最终用户客户端和服务器端应用代码(表示业务逻辑)之间的交互,从而生成和交付动态内容,例如事务结果 、决策支持或实时分析。  应用服务器的客户端可以是应用自身的最终用户 UI、Web 浏览器或移动应用,并且可通过任意数量的通信协议进行客户端/服务器交互。

然而,在实践中,特别是随着 Web 浏览器成为应用客户端的热门之选,以及用户对 Web 应用及其性能的期望不断升高,Web 服务器与应用服务器之间的界线已变得越来越模糊。

大多数 Web 服务器都支持脚本语言(例如 ASP、JSP、PHP、Perl)插件,从而能够基于服务器端逻辑生成动态内容。 越来越多的应用服务器不仅整合了 Web 服务器的功能,而且在与 Web 服务器交互的过程中使用 HTTP 作为主要协议并支持其他协议(例如,CGI 和 CGI 变体)。 它们还支持 Web 应用使用反向代理、集群、冗余和负载均衡等服务,从而提高性能和可靠性;此外,它们将开发人员从繁重的基础架构任务中解放出来,有更多精力去从事编码工作。

更令人困惑的是,许多 Web 服务器和一些应用服务器都被称为或自称为 Web 应用服务器

最重要的是,当今最流行的 Web 服务器和应用服务器实际上是这两者的混合体。 我们如今使用的大多数功能日益丰富的应用都同时具有静态 Web 内容和动态应用内容,而这些内容由 Web 服务器和应用服务器技术共同交付。

开源 Web 服务器与应用服务器

市场上充斥着各种各样的 Web 服务器和应用服务器,数量之多,不胜枚举。 我们认为,仅列出最流行的免费开源选项可能会更有价值:

Nginx
 

Nginx(链接位于 ibm.com 外部)是一种开源 Web 服务器,具有反向代理、负载均衡、邮件代理和 HTTP 缓存等功能。 可从 Nginx, Inc. 获取受支持的 Nginx 商用版本 (链接位于 ibm.com 外部)。根据互联网研究和网络犯罪预防公司 Netcraft(链接位于 ibm.com 外部)提供的数据,截至 2019 年 12 月,Nginx 为全球近 38% 的网站以及超过 25% 的日访问量达百万的最繁忙网站提供服务和代理。 Nginx 的世界知名企业用户包括 Dropbox、Netflix 和 Zynga。

Apache HTTP Server
 

Apache HTTP Server(也称为“Apache”)于 1995 年首次发布,它是另一种非常流行的免费开源 Web 服务器,它支持的网站数量一直超过其他 Web 服务器,峰值到到 71%,直到 2019 年 4 月才被 Nginx 超越。 截至 2019 年 12 月,Apache 为全球超过 24% 的网站和 31% 的日访问量达百万的最繁忙网站提供服务。

Apache Tomcat
 

Apache Tomcat(链接位于 ibm.com 外部)是一种开源应用服务器,它可以执行 Java Servlet、呈现和交付包含 JavaServer Page 代码的网页,并为 Java Enterprise Edition (Java EE) 应用提供服务。 Tomcat 于 1998 年发布,它是使用最广泛的开源 Java 应用服务器。

Glassfish
 

Glassfish(链接位于 ibm.com 外部)是 Sun Microsystems 于 2006 年推出的开源 Java EE 应用服务器,现在由 Eclipse Foundation(链接位于 ibm.com 外部)托管。 与大多数 Java 应用服务器一样,Glassfish 支持 Java Servlet 和 Enterprise JavaBeans (EJB) 等,但它也可以用作 Web 服务器,提供 Web 内容以响应 HTTP 请求。

相关解决方案
IBM® WebSphere® Application Server

IBM® WebSphere® Application Server 是最先进的应用服务器,用于构建和运行 Java 应用和企业应用。

探索 IBM® WebSphere® Application Server
IBM® WebSphere® Liberty

面向下一个应用和云服务时代的全面而灵活的 Java EE 和 MicroProfile 应用服务器

探索 IBM® WebSphere® Liberty
IBM® WebSphere® Hybrid Edition

了解如何使用 WebSphere® Hybrid Edition 推动云原生开发、应用现代化以及对现有应用的支持。

探索 IBM® WebSphere® Hybrid Edition
资源 IBM 应用现代化实战指南

本指南介绍了如何加速实现应用现代化,提高开发人员的生产力,以及增强运营效率,促进标准化水平。

什么是负载均衡?

了解负载均衡如何优化网站和应用的性能。

什么是 Java?

了解 Java 为什么仍是热门的开发平台,以及它如何加速项目的实施,并为广泛的新兴技术提供支持。

采取下一步行动

IBM 提供 HTTP Server,这是 IBM® WebSphere® Application Server 等其他产品随附的 Web 服务器。 IBM HTTP Server 基于 Apache HTTP Server,它提供了所有 Apache 功能以及 IBM 增强功能。

了解有关 IBM® WebSphere Application Server 的更多信息