我需要在现有应用程序之上设计一个 Web 服务层。真的,我最感兴趣的是 WS-Security 和 JMS 支持,可能是 JTA。
最好的服务器是什么?使用轻量级 Tomcat(我有经验)是明智的决定,还是使用实现完整 Java EE 堆栈的服务器(例如 JBoss AS、WebLogic 甚至 GlassFish)会更好?
我需要在现有应用程序之上设计一个 Web 服务层。真的,我最感兴趣的是 WS-Security 和 JMS 支持,可能是 JTA。
最好的服务器是什么?使用轻量级 Tomcat(我有经验)是明智的决定,还是使用实现完整 Java EE 堆栈的服务器(例如 JBoss AS、WebLogic 甚至 GlassFish)会更好?
通常,除非您知道您正在尝试特别使用 Java EE 服务,否则最好只使用 Tomcat。Java EE 环境非常重量级;J2EE 的设计考虑了 eBay 这样的大型环境。(我编写了 Sun 的第一个 J2EE 架构课程;我一直在关注这些论点。)
但是,您说“JMS”,它严格来说是一种 Java EE 服务。
您可能想尝试使用 JBoss 并查看它如何满足您的需求,但是,如果您想继续使用 Tomcat,您可能需要查看 Spring Framework 并查看它是否具有您想要的功能,因为它是一种在没有 Java EE 容器的情况下拥有 Java EE 的方法。
这取决于你是想尝试一些想法,看看什么对你有用,还是只做一件事,不管怎样都坚持下去。
我倾向于尝试,直到我觉得自己知道的足够多,可以做出最好的决定为止。
就我个人而言,我会使用 Tomcat 和 Spring,但我之前使用过 Spring。
如果您可以提供使用您提到的某些功能的用例,以查看是否有更好的答案,这将很有帮助。
除非您需要 Tomcat 不提供的 Java EE 堆栈中的东西,否则我会使用 Tomcat。
另外,如果您决定使用 Java EE 堆栈中的项目(如果不是专门为容器编写代码),您可以随时更改。
我认为您应该开始使用全栈 Java EE 容器。 您当然可以将 Java EE 功能附加到 Tomcat,但是当您将 JMS、JTA、WS 等结合在一起时,您所做的就是自己构建一个 Java EE 服务器。JBoss、Glassfish、JonAS 等他们都提供了一个已经过测试并且(希望)比你的更稳定的解决方案 :)