您如何比较Apache Tomcat& Glassfish作为生产服务器?

时间:2008-11-29 18:11:36

标签: apache deployment glassfish webserver

我有一个基于J2EE的系统,目前正在Apache Tomcat上运行。我们正在讨论将生产服务器迁移到Glassfish服务器。

有人可以与他们分享经验吗?

4 个答案:

答案 0 :(得分:24)

它们并不具有可比性。

Apache Tomcat不是J2EE服务器。它只是Web应用程序的Servlet容器。而已。如果您需要J2EE API实现,则必须从其他地方获取这些实现。例如,使用使用Tomcat作为容器的Apache Geronimo Server,或者从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

答案 1 :(得分:11)

这是quite an old comparison。因此,每台服务器的功能无疑都有所提升。

修改:此处为a current comparison.

两者都非常稳定,可供生产使用。它真的会归结为功能。

答案 2 :(得分:3)

大问题是:为什么?您认为Glassfish将通过Tomcat或Jetty为您提供什么?管理实用程序可能吗?

除了基本的servlet容器之外,你想要的大多数东西都很容易插入。

因此,虽然Glassfish很好,但“仅仅因为”这一点没有任何意义。我构建的大多数生产服务都是在普通的旧servlet容器上,不使用任何特定于实现的功能。

答案 3 :(得分:1)

这可能有点过时,甚至可能有点偏颇,但它来自Oracle。您可以跳到比较Glass Fish和Tom Cat的部分

http://java.sun.com/developer/technicalArticles/glassfish/GFandMySQL_Part1.html