我目前正在开始新的应用开发。应用程序设计师坚持认为我们使用 JBoss5 是因为它“更好”。是否有人对“更好”有更广泛的定义(如果如此)?
我有在具有大量用户负载的大规模应用程序中使用 Tomcat5 和6的经验,并且它处理得很好(IMHO)。两者都将在相同的硬件条件下(如果实现很重要)在 RedHat6 上运行。
提前致谢
说任何工具或框架都只是“更好”是可笑的。它总是取决于情况,架构等。您不一定要使用锤子来驱动螺钉。
我写了《 JBoss in Action》,所以我显然喜欢JBoss技术,但是我将第一个说JBoss在许多情况下会过分杀伤。例如,对于我开发的最后两个站点,使用Grails进行构建并在独立的Tomcat实例上进行部署更有意义。
说使用JBoss时得到的只是EJB和JMS有点不公平。JBoss提供了许多服务和功能,包括:
JBoss吸引了许多架构师的是它的灵活性。它使用插件体系结构,允许您添加和删除服务。就像其他人所说的那样,由于使用Tomcat作为其Servlet容器,因此您实际上可以将JBoss降低到实际上只是Tomcat服务器的位置。这样做有什么好处?如果您认为自己将利用JBoss的其他功能,则可以做为将来的证明。
JBoss中的这些服务已预先集成,并努力提供一致的部署模型,从而最大程度地减少了编写应用程序逻辑或配置以自己集成它们的工作。话虽如此,其他框架(例如Spring)在支持以统一方式集成许多流行的库和框架方面也做得很好。但是,由于他们专注于集成第三方库,因此服务之间的互操作性取决于您。因为JBoss正在构建服务和集成平台,所以他们花时间开发(和提供支持)互操作性。
做出选择时要问的一些问题是:
听起来不像是一个无耻的插件,但是Manning网站上免费提供了 JBoss in Action的第一章。尽管在本章中我们没有对JBoss与其他应用程序服务器和部署环境进行 直接 比较,但是我们还是在讨论架构上的差异,这与您的问题有关。