我有一个当前在 Apache Tomcat 上运行的基于 J2EE 的系统。我们正在讨论将我们的生产服务器迁移到 Glassfish 服务器。
有人可以与他们中的任何一个分享他们的经验吗?
我有一个当前在 Apache Tomcat 上运行的基于 J2EE 的系统。我们正在讨论将我们的生产服务器迁移到 Glassfish 服务器。
有人可以与他们中的任何一个分享他们的经验吗?
它们没有可比性。
Apache Tomcat 不是 J2EE 服务器。它只是 Web 应用程序的 Servlet 容器。而已。如果您需要 J2EE API 实现,则必须从其他地方获取。例如,通过使用使用 Tomcat 作为其容器的 Apache Geronimo 服务器,或者通过从 Glassfish 获取 JAR 文件。
Glassfish 是一个完整的 Java 应用服务器,实现了 JPA、EJB 等 API。Glassfish 包含一个 Tomcat 最初使用的 Servlet 引擎,但他们对其进行了改进(不知道具体是什么)。最近的 glassfish 服务器使用另一个容器grizzly
,该容器使用 NIO API 进行输入/输出,并且可以很好地扩展。据我所知,Glassfish Servlet Engine 的性能更高。在这里我找到了一个很好的基准(虽然它有点旧):
http://weblogs.java.net/blog/sdo/archive/2007/05/how_to_test_con.html
大问题是:为什么?您认为 Glassfish 将通过 Tomcat 或 Jetty 为您提供什么?也许是管理实用程序?
除了基本的 servlet 容器之外,您想要的大多数东西都很容易插入。
因此,虽然 Glassfish 还不错,但“仅仅因为”而移动是没有意义的。我构建的大多数生产服务都在普通的旧 servlet 容器上,不使用任何特定于实现的功能。
这可能有点过时,甚至可能有点偏颇,但它来自 Oracle。您可以跳到将玻璃鱼与汤姆猫进行比较的部分
http://java.sun.com/developer/technicalArticles/glassfish/GFandMySQL_Part1.html