Tomcat,Jboss,Glassfish等web容器比较选型

概述

Web容器是一种服务调用的规范,J2EE运用了大量的容器和组件技术来构建分层的企业应用。在J2EE规范中,相应的有WEB Container和EJB Container等。

Web容器给处于其中的应用程序组件(JSP,SERVLET)提供环境,是的JSP,SERVLET直接与容器中的环境变量打交道,而不必关注其他系统问题。

Web容器更多的是与HTTP的请求打交道,而EJB容器不是,它更多的是跟数据库其他服务打交道。

Web服务器

Web服务器可以处理HTTP协议,当Web服务器接收到一个HTTP请求,就会返回一个HTTP响应。

Web服务器可以针对静态页面或者图片的请求进行跳转,或者把动态响应委托给其他一些程序,如CGI,JSP,servlets,Asp,Javascript或者其他服务器端技术。

Web服务器仅仅提供一个可执行服务器端环境和返回响应的环境,不涉及其他技术。

Apache

是简单的web服务器,速度快,在大型网站中,常与应用服务器配合部署,仅支持静态网页。

Nginx

著名的HTTP服务器,速度极快,支持负载均衡。

应用程序服务器

根据定义,作为应用程序服务器,要求可以通过各种协议(包括 HTTP 协议)把商业逻辑暴露给(expose)客户端应用程序。应用程序使用商业逻辑就像你调用对象的一个方法或过程(语言中的一个函数)一样。

Tomcat

Tomcat仅是个HTTP服务器,以及Servlet/JSP API的执行器,也就是所谓的servlet容器,不支持EJB,JMS。

相对于JBOSS来说较为轻量级,实现的功能也较少,不能完整的支持最新的JavaEE标准,适用于较为简单的Web应用,简单易用。

JBOSS

JBOSS是开源应用服务器,JBOSS与Tomcat不同,它提供了更多开箱即用的功能特性,也更重,它完整的实现了J2EE 6。

那么应该怎样选择Tomcat或者是JBOSS,如果对大企业来说,JBOSS提供了额外的如下功能:

  1. JMS messaging for asynchronous integration
  2. Web Services engine (JAX-WS and/or JAX-RS)
  3. Management capabilities like JMX and a scripted administration interface
  4. Advanced security, e.g. out-of-the-box integration with 3rd party directories
  5. EAR file instead of "only" WAR file support
  6. all the other "great" Java EE features I can‘t remember :-)

Glassfish

Oracle开发的官方Java容器,支持最新的特性,有自己的web容器(不是tomcat)。

选型

主要根据应用的规模和需求来确定,如果仅仅是简单应用,不需要支持负责的EJB或者JMS等特性,选择简单易用的Tomcat是一个好选择。如果需要更多J2EE的特性,则需要考虑使用Jboss这种全功能服务器了。

时间: 2024-10-24 14:18:23

Tomcat,Jboss,Glassfish等web容器比较选型的相关文章

Tomcat Jboss Glassfish 三种常见web容器比较

https://i.cnblogs.com/EditPosts.aspx?postid=7596859 Tomcat Jboss Glassfish 三种常见web容器比较<br>一.缘由: 新公司平台是纯Java架构,有用到Java Web(JSP).Java 业务(EJB).Nginx..Websphere MQ.Mysql这样.大家知道java是跑在容器里的, 这里的业务要用到EJB故选用了Glassfish容器. EJB是什么?EJB是一个服务器端的组件模型,可以部署分布式应用程序.J

各种jee服务器的比较,tomcat, jboss, glassfish, websphere, weblogic

tomcat, 开源,只是一个 servlet jsp 容器. jboss, 开源,是一个j2ee 应用服务器,容器支持 servlet, jsp, ejb,jms等. 稳定且实现了全部j2ee api,文档丰富. glassfish,开源,也是一个j2ee 应用服务器,支持 servlet, jsp, ejb,jms等,启动快速,且热部署能力比较方便. websphere, weblogic, 闭源软件.

tomcat web容器工作原理

Tomcat的模块结构设计的相当好,而且其Web 容器的性能相当出色.JBoss直接就使用了Tomcat的web容器,WebLogic的早期版本也是使用了Tomcat的代码.Web容器的工作过程在下面的第二个参考文档中的文档已经说得相当清楚,我也就不再重复说了.如果不清楚调用过程,需要先看这个文档.这里分析一下Connector的处理过程.1. 一个简单的Web Server示例这个例子也是从网上找得,不知道原作者,也就不在参考资料中引用了.这个启动服务的主程序.public class Htt

三、spring boot web容器定制(端口号等修改)

spring boot 默认采用tomcat作为嵌入的web容器 定制方式有三种 1. 2.如下 @Component public class CustomizationBean implements EmbeddedServletContainerCustomizer{ /** * 定制方法一:实现EmbeddedServletContainerCustomizer * @param container */ @Override public void customize(Configura

tomcat、weblogic、jboss的区别,容器的作用

一.tomcat Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,它是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun 和其他一些公司及个 人共同开发而成.由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得 到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范.因为Tomcat 技术先进.性能稳定 ,而且免费,因而深

1、Web容器的理解&amp;Tomcat的安装与配置

Web容器的理解 <Java Web开发实战经典——基础篇>一书中对Web容器这一概念阐述得很好,借用其观点对Web容器加以理解: 想要运行一个Java Web的程序,则必须有相应的Web容器支持,因为所有的动态页面的程序代码都要在Web容器中执行,并将最后生成的结果交付给用户使用. 服务器端使用Web服务插件接受客户端的http请求,并对用户请求加以判断,判断其是动态请求还是静态请求.如果是静态请求,则直接通过Web服务器从文件系统中取得相应的文件,并通过http协议返回到客户端浏览器:如果

Session or Cookie?是否需要用Tomcat等Web容器的Session

Cookie是HTTP协议标准下的存储用户信息的工具,浏览器把用户信息存放到本地的文本文件中. Session是基于Cookie实现的. 2011年4月,武汉群硕面试的时候(实习生),面试官也问过这个问题. 当时只知道Session是基于Cookie的,但是没有想到"不使用Tomcat等Web容器的Session,只使用Cookie也可以实现自己的Session,完成会话管理,而且据说性能更好." 以前的做法: 使用HttpRequestSession保存用户信息,非常方便. 配置一个

Apache和Tomcat的区别及Web服务器,容器和应用服务器区别问题

清理书签的时候发现了遗留的Apache和Tomcat的区别的问题.打算把刚开始学习Servlet的时候的问题一同解决了,刚开始学习J2EE的时候,先学习的是Servlet,运行需要Tomcat,当时我很郁闷这是什么东西,什么Web容器,真不懂,后面请教了朋友,朋友说暂时把它当成一个服务器理解就好了. 接下来问题有: 1.什么是服务器? 2.Web服务器,Web容器和应用服务器的区别? 3.Apache和Tomcat的区别? 4.都是服务器,那么我们经常还听到Nginx这样的服务器,和Apache

【转载】web开发中 web 容器的作用(如tomcat)

我们讲到servlet可以理解服务器端处理数据的java小程序,那么谁来负责管理servlet呢?这时候我们就要用到web容器.它帮助我们管理着servlet等,使我们只需要将重心专注于业务逻辑. 什么是web容器? servlet没有main方法,那我们如何启动一个servlet,如何结束一个servlet,如何寻找一个servlet等等,都受控于另一个java应用,这个应用我们就称之为web容器. 我们最常见的tomcat就是这样一个容器.如果web服务器应用得到一个指向某个servlet的