JBoss vs Tomcat再次

这似乎是一个古老的问题(它是:))在Tomcat和JBoss之间哪个服务器更好,但我还没有找到足够好的答案来解决我的问题。

我知道Tomcat只是一个servlet引擎,JBoss提供了更多功能,但我不明白的是,为什么Tomcat在某些情况下比jboss更好用。 我读过JBoss有一个可插拔体系结构的地方,如果需要的话,你可以从JBoss中拔出特性,使其成为一个tomcat servlet容器。 如果是这样的话,那么这样做不是更好的做法,而是使用Tomcat,以便让事情恢复正常。

我发现支持Tomcat的另一个解释是它轻量级,这是否意味着更少的内存需求,或者这样做是否允许更快的响应。 再一次,我需要知道,不会按需要加载组件,也就是说,如果我只使用servlet,那么jboss不会跳过剩余的功能并自动变为轻量级。

从本质上讲,我的应用程序没有任何Java EE功能,但由于上述原因,支持Tomcat的'轻量级'参数听起来不够有说服力。

请帮忙。

编辑:我们最终决定在当时使用tomcat,现在我们已经使用它超过6个月,现在使用起来非常方便。 事实上,我们发现了一些实际的用法,我们可以很容易地在同一台服务器上为不同的开发人员运行多个tomcat实例,而使用jboss也可能非常困难。

我发现tomcat对于我们的工作来说是无忧无虑的,因此当您不使用大部分Java EE功能时可能是正确的选择。 PS:请注意,我们仍然在Tomcat中使用Spring和Hibernate


首先,事实并非如此。 正如您已经提到的,Tomcat提供了一个支持Servlet规范的Servlet容器(Tomcat 7支持Servlet 3.0)。 JBoss AS是一个'完整'的应用服务器,它支持当前版本的Java EE 6(包括Servlet 3.0)。

Tomcat相当轻量级,如果您需要Servlet API以外的某些Java EE特性,则可以通过将所需的库作为应用程序的一部分提供,从而轻松增强Tomcat。 例如,如果您需要JPA功能,您可以包含Hibernate或OpenEJB,并且JPA几乎可以直接使用。

如何决定是使用Tomcat还是全堆栈Java EE应用程序服务器:

当开始你的项目时,你应该知道它需要什么。 如果您处于大型企业环境中,JBoss(或任何其他Java EE服务器)可能是正确的选择,因为它提供了对以下内容的内置支持:

  • JMS消息传递用于异步集成
  • Web服务引擎(JAX-WS和/或JAX-RS)
  • 像JMX和脚本管理界面的管理功能
  • 高级安全性,例如与第三方目录的即时可用集成
  • EAR文件而不是“仅”WAR文件支持
  • 所有其他的“伟大的”Java EE功能我不记得了:-)
  • 在我看来,如果涉及以网络为中心的面向用户的应用程序,Tomcat是一个非常好的选择。 如果后端集成发挥作用,应该(至少)考虑一个Java EE应用服务器。 最后但并非最不重要的是,将为Tomcat开发的WAR迁移到JBoss应该是一天的练习。

    其次,您还应该考虑到您的环境中的使用情况。 如果您的组织已经运行了1000个JBoss实例,那么无论您的具体要求如何(考虑操作成本或技能提升等因素),您都可以使用该实例。 当然,反之亦然。

    我的2美分


    看看TOMEE

    它具有构建完整的Java EE应用程序所需的所有功能。


    我一定会期待TomEE,因为后面的想法是让Tomcat默认缺少所有JavaEE 6集成。 这是一种非常好的妥协

    链接地址: http://www.djcxy.com/p/44045.html

    上一篇: JBoss vs Tomcat again

    下一篇: Creation timestamp and last update timestamp with Hibernate and MySQL