请告诉我Web服务器,Web容器和应用程序服务器之间的区别。
Answers:
您的问题类似于以下内容:
在Java中:Web容器或Servlet容器或Servlet Engine:用于管理Servlet,JSP等组件。它是Web服务器的一部分。
Web服务器或HTTP服务器:能够处理客户端发送的HTTP请求并以HTTP响应进行响应的服务器。
Application Server或App Server:可以处理用户与组织的后端业务应用程序或数据库之间的所有应用程序操作,通常被视为三层应用程序的一部分,具有:表示层,逻辑层,数据层
Web服务器:它提供HTTP请求和HTTP响应。它仅通过HTTP协议处理来自客户端的请求。它包含Web容器。Web应用程序大部分部署在Web服务器上。例:Servlet JSP
Web容器:它维护Servlet对象的生命周期。调用该servlet对象的服务方法。传递HttpServletRequest和HttpServletResponse对象
应用服务器:它包含具有大型业务逻辑的大型企业应用程序。它很重,也可以容纳很重的应用。例如:EJB
Web应用程序在Web服务器的Web容器内运行。Web容器通过提供命名上下文和生命周期管理的组件来提供运行时环境。某些Web服务器还可能提供其他服务,例如安全性和并发控制。Web服务器可以与EJB服务器一起使用以提供其中一些服务。但是,Web服务器不必与EJB服务器位于同一台机器上。
Web应用程序由Web组件和其他数据(例如HTML页面)组成。Web组件可以是servlet,使用JavaServer Pages™技术创建的JSP页面,Web过滤器和Web事件监听器。这些组件通常在Web服务器中执行,并且可以响应来自Web客户端的HTTP请求。Servlet,JSP页面和过滤器可用于生成HTML页面,这些HTML页面是应用程序的用户界面。它们也可以用于生成XML或其他应用程序组件使用的其他格式数据。
来源:http://www.service-architecture.com/articles/application-servers/j2ee_web_server_or_container.html
Servlet容器的基本思想是使用Java通过Servlet和JSP在服务器端动态生成网页。因此,Servlet容器实质上是与Servlet交互的Web服务器的一部分。