java - Tomcat,JBoss和Glassfish有什么区别?

我开始研究Enterprise Java,我所关注的那本书提到它将使用JBoss。 Netbeans随Glassfish一起发货。 我过去使用过Tomcat。

这三个项目有什么区别?

8个解决方案

482 votes

Tomcat只是一个servlet容器,即它只实现了servlet和JSP规范。 Glassfish和JBoss是完整的Java EE服务器(包括EJB,JMS等......),Glassfish是最新Java EE 6堆栈的参考实现,但是2010年的JBoss还没有完全支持它。

Petar Minchev answered 2019-01-09T20:05:07Z

339 votes

Tomcat只是一个HTTP服务器和Java servlet容器。 JBoss和GlassFish是完整的Java EE应用服务器,包括EJB容器和该堆栈的所有其他功能。 另一方面,Tomcat的内存占用量较小(约60-70 MB),而那些Java EE服务器的内存占用数百兆。 Tomcat非常适用于简单的Web应用程序,或者使用Spring等不需要完整Java EE服务器的框架的应用程序。 Tomcat服务器的管理可以说更容易,因为移动部件更少。

但是,对于需要完整Java EE堆栈的应用程序(或者至少可以轻松地将其连接到Tomcat上的应用程序)... JBoss和GlassFish是两种最流行的开源产品(第三种是Apache Geronimo) ,构建免费版本的IBM WebSphere)。 JBoss拥有更大更深的用户社区,以及更成熟的代码库。 但是,JBoss在实现当前Java EE规范方面远远落后于GlassFish。 此外,对于那些喜欢基于GUI的管理系统的人... GlassFish的管理控制台非常灵活,而JBoss中的大多数管理都是使用命令行和文本编辑器完成的。 GlassFish直接来自Sun / Oracle,具有可提供的所有优势。 JBoss不受Sun / Oracle的控制,具有可提供的所有优势。

Steve Perkins answered 2019-01-09T20:05:38Z

63 votes

您应该使用GlassFish for Java EE企业应用程序。有些事情需要考虑:

Web服务器意味着:处理HTTP请求(通常来自  浏览器)。

Servlet容器(例如Tomcat)意味着:它可以处理   servlets&JSP。

应用程序服务器(例如GlassFish)表示:*它可以管理   Java EE应用程序(通常是servlet / JSP和EJB)。

Tomcat - 由Apache社区运行 - 开源,有两种风格Tomcat - Web配置文件 - 轻量级,它只是servlet容器,不支持EJB,JMS等Java EE功能。Tomcat EE - 这是一个经过认证的Java EE容器,它支持所有Java EE技术。

没有商业支持(仅限社区支持)

JBoss - 由RedHat运行这是JavaEE的完整堆栈支持,它是经过认证的Java EE容器。这包括内部的Tomcat作为Web容器。这也有两种口味社区版本称为Application Server(AS) - 这将只有社区支持企业应用服务器(EAP) - 为此,您可以拥有基于订阅的许可证(它基于您在服务器上拥有的核心数量。)

Glassfish - 由Oracle运行这也是一个经过完整堆栈认证的Java EE容器。 它有自己的Web容器(不是Tomcat)。这来自Oracle本身,因此所有新规范都将首先使用Glassfish进行测试和实施。 所以,它始终会支持最新的规范。 我不知道它的支持模型。

Jaimin Patel answered 2019-01-09T20:06:45Z

12 votes

jboss和glassfish包含一个servlet容器(如tomcat),但是两个应用程序服务器(jboss和glassfish)也提供了一个bean容器(以及我想象的其他一些东西)

NimChimpsky answered 2019-01-09T20:07:07Z

4 votes

JBoss和Glassfish基本上是完整的Java EE Application Server,而Tomcat只是一个Servlet容器。JBoss,Glassfish以及WebSphere,WebLogic等对Tomcat以及Jetty的主要区别在于完整应用服务器提供的功能。 当您拥有一个完整的堆栈Java EE应用服务器时,您可以从您所选择的供应商的所有实现中受益,您当然可以从EJB,JTA,CDI(JAVA EE 6 +),JPA,JSF,JSP / Servlet中受益 等等。 另一方面,使用Tomcat,您只能受益于JSP / Servlet。 然而,对于使用Spring和Guice等高级框架的日子,使用完整堆栈应用程序服务器的许多主要优点都可以减轻,并且假设这个框架中的一个具有Spring Ecosystem的男子气概,您可以受益于许多子 项目,在我的工作经验让我离开使用完整的堆栈应用服务器,支持像tomcat这样的轻量级应用服务器。

Valerio Vaudi answered 2019-01-09T20:07:30Z

3 votes

JBoss和Tomcat都是Java servlet应用服务器,但JBoss还有很多。 两者之间的实质区别在于JBoss提供了完整的Java Enterprise Edition(Java EE)堆栈,包括Enterprise JavaBeans和许多其他技术,这些技术对于从事企业Java应用程序的开发人员非常有用。

Tomcat更有限。 一种思考方式是JBoss是一个包含servlet容器和Web服务器的Java EE堆栈,而Tomcat大部分是一个servlet容器和Web服务器。

Spartan answered 2019-01-09T20:07:59Z

3 votes

当您阅读这些答案时,使用Tomcat似乎有点令人沮丧。 然而,大多数没有提到的是,您可以使用tomcat获得相同或几乎相同的用例,但这需要您添加所需的库(通过Maven或您使用的任何包含系统)。

我一直在使用JPA运行tomcat,EJB配置工作量非常小。

user2130951 answered 2019-01-09T20:08:28Z

1 votes

Apache tomcat只是一个不支持Enterprise Java应用程序(JEE)的serverlet容器。 JBoss和Glassfish支持JEE应用程序,但Glassfish比JBOSS服务器重得多:参考幻灯片

Oshi_007 answered 2019-01-09T20:08:49Z

java glassfish_java - Tomcat,JBoss和Glassfish有什么区别?相关推荐

  1. java glassfish_java – Spring,NotReadablePropertyException和Glassfish版本

    我正在使用一个使用 Spring MVC的Web应用程序. 它在Glassfish 3.0.1上运行良好,但是当迁移到Glassfish 3.1时,它开始表现得很奇怪.有些页面只是部分显示,或者根本没 ...

  2. Apache/Tomcat/JBOSS/Neginx/lighttpd/Jetty 的区别

    先说Apache和Tomcat的区别: Apache是世界使用排名第一的Web服务器软件.它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一. ...

  3. Tomcat(一) Tomcat是什么:Tomcat与Java技术 Tomcat与Web应用 以及 Tomcat基本框架及相关配置

    Tomcat(一) Tomcat是什么: Tomcat与Java技术 Tomcat与Web应用 以及 Tomcat基本框架及相关配置 Tomcat是一个被广泛使用的Java WEB应用服务器,我们有必 ...

  4. [转]总结:Apache/Tomcat/JBOSS/Jetty/Nginx区别 .

    总结:Apache/Tomcat/JBOSS/Nginx区别 . 1.Apache是Web服务器,Tomcat是应用(Java)服务器.Tomcat在中小型系统和并发访问用户不是很多的场合下被普遍使用 ...

  5. php x24 x65 x6d x61,Apache Tomcat/JBoss EJBInvokerServlet / JMXInvokerServlet 漏洞利用

    Apache Tomcat/JBoss EJBInvokerServlet / JMXInvokerServlet (RMI over HTTP) Marshalled Object RCE漏洞利用 ...

  6. Apache/Tomcat/JBOSS/Nginx区别

    2019独角兽企业重金招聘Python工程师标准>>> Apache/Tomcat/JBOSS/Nginx区别 博客分类: 中间件 先说Apache和Tomcat的区别: Apach ...

  7. mysql tomocat vs2005_C# 制作Java +Mysql+Tomcat 环境安装程序,一键式安装

    要求: JDK.Mysql.Tomcat三者制作成一个安装包, 不能单独安装,安装过程不显示三者的界面, 安装完成要配置好JDK环境.Mysql服务.Tomcat 服务 目的: 解决客户在安装软件的复 ...

  8. Java+MyEclipse+Tomcat (六)详解Servlet和DAO数据库增删改查操作

    此篇文章主要讲述DAO.Java Bean和Servlet实现操作数据库,把链接数据库.数据库操作.前端界面显示分模块化实现.其中包括数据的CRUD增删改查操作,并通过一个常用的JSP网站前端模板界面 ...

  9. Java+MyEclipse+Tomcat (五)DAO和Java Bean实现数据库和界面分开操作

    正如前面一篇文章的介绍,当使用Servlet提交表单和JSP数据库查询时,总是相互交叉着的处理,要么在JSP中通过<%...%>内嵌Java代码操作数据库,要么 JSP中通过Post方法提 ...

最新文章

  1. 二叉树和为某种所有路径
  2. bloomfilter的java实现,BloomFilter(布隆过滤器)原理及实战详解
  3. 按15分钟取数据_Python爬取猫眼电影《飞驰人生》4万多条评论并对其进行数据分析...
  4. php jq表格,如何用jQuery操作表单和表格
  5. 易语言中关于成员变量的声明
  6. 记录几个Maven库地址
  7. 亲戚问我工资多少钱,该说实话吗?
  8. 实战Node—幼教平台项目重构和优化
  9. 【优化求解】基于matlab生物地理算法求解MLP问题【含Matlab源码 1415期】
  10. 【博弈找规律问题汇总】
  11. 8.15-30题目归档
  12. html实现文字在表格上方左侧,html,表格,左对齐.doc
  13. 打通云主机实现局域网
  14. php theexcerpt,WordPress:the excerpt(摘要)
  15. 什么是贪婪型人格?如何改变贪婪的性格?
  16. PS 如何去除光晕的黑色背景
  17. 华为防火墙笔记-报文处理流程
  18. 创新思维与方法期末考试答案
  19. varnish 缓存php,php实现监控varnish缓存服务器的状态,php监控varnish缓存
  20. python线性加权回归_第二十一章 regression算法——线性回归局部加权回归算法(上)...

热门文章

  1. 2021级C语言大作业 - 合成一个大西瓜
  2. 2017级C语言大作业 - 水果忍者
  3. windows10常用快捷键
  4. Python gmpy2 mpz Methods
  5. 25 种代码坏味道总结+优化示例
  6. 2020 年 AI 产业报告:100 个岗位抢 1 个人,计算机视觉成最大缺口
  7. 和付费网盘说再见,自己起个网盘不香吗?| Java 开源项目
  8. 35 岁以下科技创新 35 人之一,这位博士解开美团 AI 的冰山一角!
  9. 大麦融入阿里电商平台,杰伦演唱会的票会不会好抢点?
  10. MySQL 面试,必须掌握的 8 个知识点