首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >web服务器和应用程序服务器的区别

web服务器和应用程序服务器的区别
EN

Stack Overflow用户
提问于 2011-07-18 21:37:39
回答 5查看 17.4K关注 0票数 10

作为一个外行,我如何理解web服务器和应用服务器之间的区别?如果你能用非常“简单”的术语给出一个使用基于Java的web应用的例子,那就太棒了.

另外,当我们说Weblogic时,它只是一个web服务器吗?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2011-07-18 21:45:17

web服务器是处理HTTP请求和响应的东西。

应用服务器(如WebLogic、WebSphere、JBoss AS、Glassfish等)通常包括web服务器,但也添加了更多功能。最重要的是它管理对象。它们是Servlet (Servlet容器)、ejb (ejb容器)、JMS侦听器等。

票数 10
EN

Stack Overflow用户

发布于 2011-07-18 21:47:10

web服务器只能执行Web应用程序,即servlet和JSP,并且只有一个称为web容器的容器,用于解释/执行web应用程序

应用服务器可以执行企业应用,即(servlets、jsps和EJB )它有两个容器: 1. Web容器(用于解释/执行servlets和jsps) 2. EJB容器(用于执行EJB)。它可以执行负载均衡、事务划分等操作

票数 1
EN

Stack Overflow用户

发布于 2011-07-18 22:03:36

我要说的是,定义各不相同。在广义的上下文中,Web服务器是一种服务器,它可以接收传入的web请求,并了解如何处理和响应这些请求。有些请求是静态的(html文件、图像等),有些是动态的。在动态请求的情况下,web服务器将知道将请求的处理路由到何处,可以是JSP页面或java servlet、PHP脚本、perl CGI脚本等。

虽然在此上下文中的"web服务器“执行动态处理程序,但它不被认为包括用于动态处理程序的任何支持中间件功能。

相比之下,应用程序服务器是提供某种类型的中间件层支持的通用执行环境。例如EJB容器或内置到Windows中的.NET框架(其中Windows本身就是一个“应用服务器”)。应用服务器本身并不要求与web请求有任何关系(尽管很多都是这样),它只是一个通用的执行上下文和容器,用于任何类型的应用程序,提供某种额外的中间件支持。

在纯粹以web为中心的情况下,许多人会在静态和动态内容之间划清界限。在这个定义中,"web服务器“本身只能处理对静态信息的请求,它会将对动态内容的请求传递给”应用服务器“。例如,Apache httpd是web服务器,Tomcat是应用程序服务器。IIS是两者的组合。在Java web世界中,应用服务器既可以是servlet容器(如Tomcat),也可以是成熟的Java容器(如JBoss、WebLogic或WebSphere),除了servlet容器之外,它还提供Java中间件支持(EJB)容器。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6733760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档