2010-01-02 163 views

回答

6

A'网络服务器'通常是使用http(或https)协议服务内容的任何服务器程序。这些服务器倾向于侦听特定端口(80或443)。这些客户端通常是网页浏览器,例如Chrome,Firefox或Internet Explorer。 Web服务器的

例子:阿帕奇,微软的IIS

应用服务器”是一个更为模糊,不够明确的术语。它可以指代针对给定应用的客户请求提供响应的任何程序。

在Web服务环境中,“应用程序服务器”倾向于指用于生成动态内容的更高级别的框架。这可能是某种容器,您可以在其中部署特定的“Web应用程序”。例子包括Apache Tomcat,WebSphere,JBoss等。

在这两种情况下,这个术语也可以指主机软件来执行这些事情的机器硬件。

+0

IIS也是一个应用服务器,适用于ASP.NET。 – 2010-01-02 20:25:10

0

Web服务器有时可充当应用程序服务器(例如,托管Web服务时)。但是,应用程序服务器不必作为Web服务器来实现。它可以只侦听TCP套接字并采取相应的行动

2

Web服务器是一个容器,用于像servlet/jsp容器这样的简单操作。 应用程序服务器是一个类似于Web服务器的容器,但添加了比Web服务器更多的操作,如事务管理器,数据源,集群,负载平衡,消息传递以及其他复杂的业务操作。

web服务器像apatche tomcat。

应用服务器如jboss,glassfish,web sphere,oracle应用服务器。

+0

我不同意。 Web Server只是Application Server的特定形式。 – skaffman 2010-01-02 20:48:24

+0

目标同意web服务器是应用服务器的特殊版本。 web服务器是轻量级容器 和应用程序服务器是重量级容器原因包含许多服务和容器,如jsp/servler和ejb容器等服务。 – bassem 2010-01-02 20:57:35

+0

@bassem:这并没有太大的意义.. 首先,网络服务器不是'轻量级容器'。一些网络服务器比其他网络服务器更轻量。例如,lighttpd是一款最小,占用空间小,速度快的网络服务器。 Apache不能称为轻量级。其次 - 术语是'应用程序服务器'是非常通用的。这意味着不同的事情取决于你问谁。 – user242275 2010-01-02 21:47:41

-1

Web服务器

Web服务器处理HTTP协议。当Web服务器接收到一个HTTP请求时,它会响应一个HTTP响应,例如发回一个HTML页面。为了处理请求,Web服务器可以响应静态HTML页面或图像,发送重定向,或将动态响应生成委托给其他程序,例如CGI脚本,JSP(JavaServer Pages),servlet,ASP(Active Server Pages ),服务器端JavaScript或其他一些服务器端技术。无论它们的用途如何,这些服务器端程序都会生成一个响应,通常以HTML格式在Web浏览器中查看。

了解Web服务器的委托模型非常简单。当请求进入Web服务器时,Web服务器只是将请求传递给最能够处理它的程序。 Web服务器除了提供服务器端程序可以执行并返回生成的响应的环境外,不提供任何功能。服务器端程序通常为自身提供事务处理,数据库连接和消息传递等功能。

虽然Web服务器本身可能不支持事务或数据库连接池,但它可能会采用各种策略来实现容错和可伸缩性,如负载平衡,缓存和集群 - 通常被错误地指定为仅保留给应用程序服务器的功能。

应用服务器

作为应用服务器,根据我们的定义中,应用服务器通过各种协议暴露业务逻辑的客户端应用,其中可能包括HTTP。虽然Web服务器主要处理发送用于在Web浏览器中显示的HTML,但应用服务器提供对业务逻辑的访问以供客户端应用程序使用。应用程序可以像使用对象(或过程世界中的函数)调用方法一样使用此逻辑。

此类应用程序服务器客户端可以包括在PC,Web服务器或甚至其他应用程序服务器上运行的GUI(图形用户界面)。应用服务器和客户端之间来回传递的信息不限于简单的显示标记。相反,这些信息是程序逻辑。由于逻辑采用数据和方法调用的形式,而不是静态HTML,客户可以使用公开的业务逻辑,但是它需要。

在大多数情况下,服务器通过组件API公开该业务逻辑,例如J2EE(Java 2 Platform,Enterprise Edition)应用程序服务器上的EJB(Enterprise JavaBean)组件模型。而且,应用程序服务器管理自己的资源。这种关守职责包括安全性,事务处理,资源池和消息传递。与Web服务器一样,应用程序服务器也可能采用各种可伸缩性和容错技术。

+1

您是否复制了http://www.javaworld.com/article/2077354/learn-java/app-server-web-server-what-s-the-difference.html中的这个响应单词并且没有给出任何信用? – Kon 2015-12-03 21:03:39

相关问题