【发布时间】:2011-05-12 00:04:56
【问题描述】:
我在公司的基础架构团队(Jboss 4.02/Tomcat 5.5/Weblogic 8.1 服务器)工作...一些 weblogic java 应用程序正在迁移到 jboss/tomcat 服务器。那么我们需要满足哪些标准考虑我们是否需要去jboss或tomcat?哪个是最好的选择?
提前致谢, 拉赫什
【问题讨论】:
标签: java tomcat jboss application-server
我在公司的基础架构团队(Jboss 4.02/Tomcat 5.5/Weblogic 8.1 服务器)工作...一些 weblogic java 应用程序正在迁移到 jboss/tomcat 服务器。那么我们需要满足哪些标准考虑我们是否需要去jboss或tomcat?哪个是最好的选择?
提前致谢, 拉赫什
【问题讨论】:
标签: java tomcat jboss application-server
主要区别当然在于 JBoss 是一个应用程序服务器并支持完整的 Java EE 堆栈,而 Tomcat 是一个 servlet 引擎 并且仅支持 Java EE 中定义的一小部分 API。
因此,您的主要标准应该是:您需要哪些 API(前端、业务逻辑、持久性、第三方......)?
您不应该轻易做出这个决定。您提出这个问题的事实表明,您可能没有机会同时使用这两种技术并熟悉 Java Enterprise 堆栈背后的概念(Java EE 与 Spring 与 DIY)。
我的建议是花时间评估这两个系统 - 看起来你可以同时使用这两个系统。
但再说一遍:这是一个严肃的决定,对几乎所有事情都有很大影响......
【讨论】:
Tomcat 和 JBoss 都非常容易安装 - 只需解压缩文件,然后使用脚本启动它。 Tomcat 和 JBoss 对 IDE、监控工具等产品都有很好的支持。
但在您的迁移案例中,JBoss 是更好的选择。您的 Web 应用程序很可能需要 JNDI 数据源和 JTA 事务——这些东西内置在 JBoss 4+ 中,而您必须将它们移植到 Tomcat 5.x 上,付出很多努力。您的旧 WAR 将在 JBoss 上轻松找到 JTA 和 JNDI 数据源。 Tomcat 确实可以添加这些功能,但是 JBoss 将它们很好地封装到系统中。因此,即使您没有 EJB 或 JMS,那么 JBoss 仍然是一个不错的选择,因为许多应用程序确实需要 JTA 和 JNDI。
当然,如果您为您的应用程序找到 EAR 文件,那么 Tomcat 将无法工作。然后 JBoss 会很好地部署 EAR 文件。
【讨论】:
DataSourceTransactionManager。我并不是说它总是最好的解决方案,但肯定是可能的。
JBOSS 使用 Tomcat 作为其 servlet/JSP 引擎,所以它是 JBOSS 和 Tomcat 或 WebLogic。
答案取决于原始应用程序是使用 EJB 还是 JMS 服务。如果有,您必须使用 JBOSS,因为 Tomcat 不支持 EJB(除非您添加 OpenEJB)或 JMS(除非您添加 RabbitMQ 或 OpenJMS 之类的东西)。
如果您不使用 EJB,而只有 JSP、JNDI 数据源和 JDBC,那么您可以将您的应用程序部署为 Tomcat 上的 WAR 文件,并完全传递整个 Java EE 堆栈。
【讨论】:
我认为你应该考虑从不同的输入数据开始:
只需用 2 个产品和这些标准编写一个矩阵,您的选择就完成了!!! Jboss 比 Tomcat 重得多,但可以在应用程序就位的同时提供一些附加值?您是否有一些 Nagios/Tivoli 或任何其他 SNMP 管理基础架构?在这种情况下,您可以轻松找到提供专有 MIB 的 SNMP 适配器来管理您的 JBoss 服务器...旧版本中的 JMX Bean 是管理此类工具的一种非常方便的方式
HTH 杰罗姆
【讨论】: