2008-11-29 14 views

Respuesta

11

Aquí está quite an old comparison. Como tal, las capacidades de cada servidor sin duda han mejorado.

Editar: Aquí es a current comparison.

Ambos son más que suficiente estable para su uso en producción sin embargo. Realmente se reducirá a las características.

+5

Su "comparación actual" también es ahora obsoleto. [Nueva página.] (Http://wikis.sun.com/display/glassfish/GlassFishVsTomcat) [Aún más reciente] (http://www.oracle.com/us/products/middleware/application-server/glassfish- for-tomcat-users-wp-073699.pdf) (advertencia, enlace PDF). –

24

No son realmente comparables.

Apache Tomcat no es un servidor J2EE. Es simplemente un contenedor Servlet para aplicaciones web. Nada mas. Si necesita implementaciones de la API J2EE, debe tomarlas de otros lugares. Por ejemplo, usando el Servidor Apache Geronimo que usa Tomcat como su contenedor, o tomando los archivos JAR de Glassfish.

Glassfish es un servidor de aplicaciones Java completo con implementación para API como JPA, EJB y más. Glassfish contiene un motor Servlet utilizado inicialmente por Tomcat, pero lo mejoraron (no sé qué exactamente). Los servidores de glassfish más recientes usan otro contenedor usando grizzly que usa la API de NIO para entrada/salida y escala bastante bien. Hasta donde yo sé, Glassfish Servlet Engine es más eficiente. Aquí he encontrado un buen punto de referencia (que es un poco viejo, aunque):

http://weblogs.java.net/blog/sdo/archive/2007/05/how_to_test_con.html

+1

Creo que solo usarías Apache Geronimo si quisieras Tomcat con una pila J2EE completa. – Powerlord

+0

Sí, acabo de descubrir Geronimo. bonito :) –

3

gran pregunta es: ¿por qué? ¿Qué crees que necesitas que Glassfish te brinde sobre Tomcat o Jetty? ¿Utilidades de gestión tal vez?

La mayoría de las cosas que desea más allá del contenedor básico de servlets son fácilmente conectables.

Por lo tanto, aunque Glassfish está bien, no tiene sentido moverse "solo porque". La mayoría de los servicios de producción que he creado están en contenedores de servlets antiguos, sin utilizar ninguna característica específica de la implementación.

Cuestiones relacionadas