我需要在现有应用程序之上设计一个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服务。
除非你需要Java EE堆栈中Tomcat没有提供的东西,否则我会使用Tomcat。
此外,如果你不是专门为容器编写代码,那么你随时可以在以后决定使用Java EE堆栈中的项目。
我认为你应该开始使用一个全栈的Java EE容器。 当然,你可以将Java EE功能附加到Tomcat上,但是当你在组合JMS、JTA、WS等时,你实际上是在自己构建一个Java EE服务器。JBoss、Glassfish、JonAS等都提供了一个经过测试和(希望)更稳定的解决方案,比你自己构建的要好:)