JBoss 再次 vs Tomcat [已关闭]

2023-12-29

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

我知道 Tomcat 只是一个 servlet 引擎,而 JBoss 提供了更多开箱即用的功能,但我不明白的是为什么 Tomcat 在某些情况下比 jboss 更好用。 我在某处读到 JBoss 有一个可插拔的架构,如果需要,您可以从 JBoss 中拔出功能,使其本质上成为一个 tomcat servlet 容器。如果是这种情况,那么最好这样做而不是使用 Tomcat,以便留出重新插入的空间。

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

本质上,我的应用程序没有任何 Java EE 功能,但由于上述原因,支持 Tomcat 的“轻量级”论点听起来不够令人信服。

请帮忙。

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

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


先说事实,两者都不是better。正如您已经提到的,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 可以工作nearly盒子外面。

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

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

  1. 用于异步集成的 JMS 消息传递
  2. Web 服务引擎(JAX-WS 和/或 JAX-RS)
  3. JMX 和脚本化管理界面等管理功能
  4. 先进的安全性,例如与第三方目录的开箱即用集成
  5. EAR 文件而不是“仅”WAR 文件支持
  6. 我不记得所有其他“伟大的”Java EE 功能了:-)

在我看来如果涉及以 Web 为中心、面向用户的应用程序,Tomcat 非常适合。如果后端集成发挥作用,则应(至少)考虑 Java EE 应用服务器。最后但并非最不重要的一点是,将为 Tomcat 开发的 WAR 迁移到 JBoss 应该只需要 1 天的时间。

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

我的2分

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JBoss 再次 vs Tomcat [已关闭] 的相关文章

  • 在 Tomcat 中处理夏令时,无需重新启动服务器

    我有一个在 Tomcat 上运行的 Java Web 应用程序 用于为客户端创建计划事件 我有一个关于底层操作系统 Tomcat 和 JVM 的默认日期时间的问题 当我检索Date通过Java代码它与底层操作系统类似 然后我更改了操作系统时
  • 具有 CXF 和 Kerberos 身份验证的 Restful 服务

    尝试使用 Kerberos 身份验证保护现有 CXF JAX RS 服务时遇到困难 我浏览了似乎是参考文档的内容 http cxf apache org docs jaxrs kerberos html http cxf apache or
  • Tomcat 热部署到托管多个应用程序的实例

    我的问题是关于部署到托管多个应用程序并托管 Struts Spring 和 Hibernate 的应用程序上下文的 Tomcat 服务器实例 我想在不重新启动 Tomcat 服务器的情况下将更改部署到一个应用程序 举个例子 在我们公司很多时
  • 不支持的major.minor版本52.0错误[重复]

    这个问题在这里已经有答案了 我有在 JDK 1 8 上编译的代码 我创建了 war 文件并将其部署在运行 JRE 1 8 的 Ubuntu 服务器中的 Tomcat8 上 我打开主页的时候出现这个错误 java lang Unsupport
  • Spring Boot 应用程序的 .jar 无法正常工作(tomcat-embed-jasper 问题)

    我对 Spring boot 和 Maven 相当陌生 我在尝试运行可执行文件 jar 时遇到问题 我的最终目标是创建 jar 的 docker 映像 以便我可以部署我的应用程序 当我执行 mvn clean install 时 我得到了应
  • JBoss 6 EAP JaxWsProxyFactoryBean NoClassDefFoundError

    我正在从 JBoss 6 1 0 JBoss EAP 4 2 xa 迁移应用程序 我知道我改变了很多事情 最重要的之一是 JBoss 现在包含了大部分框架 最常用的库 模块 这很棒 war 文件更小 现在 我有两个应用程序 都安装了 Spr
  • 从 Web 容器外部访问数据源(通过 JNDI)

    我正在尝试从容器外部的胖客户端访问 Web 容器 JBoss 中定义的数据源 我决定通过JNDI查找数据源 实际上 我的持久性框架 Ibatis 就是这样做的 执行查询时我总是会收到此错误 java lang IllegalAccessEx
  • 在 Netbeans 8 上配置 JBoss EAP 的问题

    我已经下载了 JBoss EAP 7 并正在 Netbeans 8 上配置它 我已经到达向导 实例属性 其中要求从选择框中选择 域 当我打开选择框时 它是空的 没有什么可以选择的 因此 完成 按钮也处于非活动状态 这使得无法完成配置 我通过
  • 加密 JBoss 配置中的敏感信息

    JBoss 中的标准数据源配置要求数据库用户的用户名和密码位于 xxx ds xml 文件中 如果我将数据源定义为 c3p0 mbean 我会遇到同样的问题 是否有标准方法来加密用户和密码 保存密钥的好地方是什么 这当然也与 tomcat
  • 在 JBoss EAP 5.1 中为特定 MDB 配置 maxSession 属性

    如何使 MDB 的 maxSession 值可由用户配置 有一个 MDB 侦听来自特定队列的消息 它被定义为注释 ActivationConfigProperty propertyName maxSession propertyValue
  • tomcat 7上部署war时出现死循环

    我尝试将战争部署到 Tomcat 7 0 29 中 我有以下日志堆栈 GRAVE Error waiting for multi thread deployment of context descriptors to complete ja
  • 如何在 Eclipse 导出到 war 时将所有外部 jar 添加到库

    现在我已经做了一些研究 我明白我需要将依赖的外部 jar 放在 eclipse 中的动态 Web 项目的 web inf lib 文件夹中 不幸的是 到目前为止 我只是将它们导入到 eclipse 内的构建路径中 然后再次导入到我的测试服务
  • 构建/部署 EJB .jar 及其依赖项

    我是 Java EE 新手 我使用 Maven Eclipse 和 jBoss WildFly 我有一个war项目 当我构建项目时 它的所有依赖项都打包在war文件输入WEB INF lib 现在我正在尝试创建一个ejb项目 我有
  • servlet 如何获取 servlet 之外的文件的绝对路径?

    我们一直在使用 System getProperties user dir 来获取属性文件的位置 现在它已经部署在 Tomcat 上 通过 servlet 系统调用将位置指定为 tomcat 而不是属性文件所在的位置 我们如何动态调用属性文
  • JBoss 5 截断 base64 cookie 字符串的尾部 =

    从 JBoss 4 升级到 JBoss 5 后 我注意到最烦人的回归 它截断 base64 cookie 值的尾部等号 我花了很长时间才明白问题不是我的代码而是 JBoss 的 我用 google 搜索了一下 发现这是一个已知的问题issu
  • 为什么在每个会话可能有并发请求的情况下不应该使用 Tomcat 的 PersistentValve?

    在顶部的班级评论中PersistentValve https github com apache tomcat blob TOMCAT 9 0 14 java org apache catalina valves PersistentVal
  • Apache Tomcat 无法加载 web.xml - 连接超时

    如果我尝试在 Tomcat 中部署 Web 应用程序 则会出现异常 这web xml对我来说似乎是正确的 所以问题应该出在其他地方 任何帮助 将不胜感激 web xml
  • 即使类位于包中,也无法从 tomcat 服务器运行我的 servlet

    我正在尝试让我的 servlet 运行 我已经搜索了 2 天并尝试了所有可能的解决方案 但没有成功 servet 类位于适当的文件夹中 即在包名称下 我还将 servlet 中所需的 jar 文件添加到 lib 文件夹中 web xml 文
  • Eclipse 中的 Tomcat 配置

    我将 Eclipse Luna 与 Tomcat 8 一起使用 并且对配置文件的不同位置感到困惑 我已在本地计算机上安装了 Tomcat 并在 Eclipse 中配置 Tomcat 如下所示 所以涉及到4个目录 a Catalina 主目录
  • tomcat cookie域验证

    我正在使用 tomcat 8 0 21 和新的 Rfc6265 cookie 处理器 如果有以点开头的 cookie 我会收到以下错误 java lang IllegalArgumentException An invalid domain

随机推荐