Weblog de Victor Ramirez

Sábado, septiembre 12, 2009

y tu… aún usas Tomcat???

Filed under: glassfish, Sun, web — Etiquetas: , , , , — vramirez @ 2:42 AM

Aunque el título es “algo” sesgado, me propongo en este post hacer, de manera no tan humilde, una comparación entre 2 servidores de aplicaciones: Tomcat y GlassFish. Primero que todo, un servidor de aplicaciones, desde una mirada muy somera, no es más que una especie de contenedor, desde el cual se muestran y ejecutan las paginas web, hechas por los desarrolladores. Tomcat es quizás uno de los primeros servidores de aplicaciones, open source, realizado por la comunidad Apache, algunos empleados y  ex-empleados de Sun. Si bien es cierto que en un comienzo Tomcat marcó la pauta en el desarrollo web (de hecho fue donde di los primeros pasos en el manejo de JSP’s), la llegada de GlassFish y Java EE 5 le asestó un golpe del cual difícilmente se podrá recuperar.

Cabe resaltar que Tomcat no es más que un contenedor web, mientras que GlassFish es un conjunto de contenedores de Java EE, dentro de los cuales esta el contenedor web. Esto permite que, entre otras cosas, GlassFish no solo se limite a interpretar jsp’s, sino que brinda compatibilidad con tecnologías de vanguardia como php, ruby, jruby, desde el arranque sin necesitar mayor configuración. Esto implica que bajo GlassFish se puedan correr las aplicaciones hechas para Tomcat sin mayores cambios o configuraciones, lo más seguro es que funcionen de primera. Además cuenta con funcionalidad de cluster y balanceo de carga que permite tener varios servidores respaladando una misma aplicación, incluso se pueden crear servidores virtuales por cada máquina, que solo respondan a determinados puertos. Otra desventaja de Tomcat, sino es la principal, es que NO es 100% compatible con Java EE 5, lo cual es un gran inconveniente en un ambiente productivo, donde se necesitan contar con todas las herramientas disponibles.

Asi como comenté en un post anterior, GlassFish v2, cuenta con un centro de actualización, desde el cual se puede instalar, o actualizar módulos del servidor de forma fluida y sencilla, además la nueva versión, GlassFish v3 Prelude tiene un “preview” de las nuevas tecnologías disponibles en Java EE 6, como por ejemplo JSF 2.0 JPA 2.0. Otra razón para escoger GlassFish es el manejo que se le da a la seguridad, pues permite meadiante la tecnologia “realm” para manejar el login a una aplicación ya sea a través de LDAP, una BD, o un archivo tal y como lo muestra este  tutorial que utiliza NetBeans 6.5

Como vemos GlassFish es más que un contenedorr para desplegar páginas web, es una herramienta muy interesante, que brinda muchas funcionalidades de una manera muy sencilla, incluso para ambientes de producción y a un bajo costo, pues es un producto open source, aunque también cuenta con una linea comercial. Si bien Tomcat ha muchos nos sirvió y algunos siguen utilizando, espero que éstos últimos al menos le den una mirada a GlassFish y lo prueben, no se arrepentirán.

8 comentarios »

  1. Decir que Glahfish soporta realm no creo que sea motivo para descartar y echar por tierra el trabajo de toda la gente detrás del proyecto Tomcat.
    Cuando se indica que no es compatible 100% con Java 5 tb hay que especificar un poquito más, sólo comentar que esta críticaes demasiado sencilla, mejor para la siguiente pones unos cuantos ejemplos y la argumentas, sobre todo con un análisis de rendimiento que, al fin y al cabo, es lo que más nos interesa a todos.
    Por lo pronto, sigo con Tomcat para aplicaciones web, a la espera de unas buenas razones para probar Glashfish. Aunque teniendo también en cuenta que para mayores necesidades, como EJB me quedo con JBOSS.
    Un saludo,

    Comentario por Vic — Sábado, septiembre 12, 2009 @ 11:28 PM

  2. Hola Vic, gracias por leer, y comentar mis posts, y sobretodo generar debate. Lo que digo acreca de GlassFish, no es solo por el realm, sino por como lo mencionas la compatibilidad con Java EE 5, que no se reduce solo a EJB. Me faltó explicarlo aún más, tienes razón. Por otro lado, resalto la compatibilidad de Glassfish con muchos lenguajes web, lo cual te facilita la administración de un sólo servidor de aplicaciones, y no solo eso sino que mediante el update center, puedes de manera muy didáctica actualizar los componentes de GlassFish. En fin, lo que pretendo es mostrar que GlassFish hace lo mismo y muchas otras cosas que Tomcat, y de manera muy sencilla.

    Comentario por vramirez — Lunes, septiembre 14, 2009 @ 6:30 AM

  3. Hola Vic:

    Mi trabajo actual es buscar una mejor solución que Tomcat pues hemos tenido algunos problemas sobre todo de memoria y desempeño, el hardware con el que contamos es bastante poderoso pero el Tomcat no aprovecha los recursos que tiene disponible por lo tanto necesito un servidor de aplicaciones que rinda y aproveche las bondades del hardware, como antecedente te comento que nuestro aplicativo actualmente no requiere de otros contenedores mas que el contenedor web, así que aunque GlassFish tenga más contenedores, no sería la justificación por la que cambiaríamos de servidor.

    Ahora se me ocurren las siguientes preguntas:
    1. El GlassFish al manejar muchos contenedores debe demandar más recursos de los que demanda el servidor Tomcat?
    2. El GlassFish es modular ? podría trabajar con contenedores a demanda para evitar consumo de recursos innecesarios y poder ir incluyendo los contenedores estrictamente necesarios?
    3. Conoces de algún estudio que pueda demostrar que el contenedor web del GlassFish demande menores o iguales recursos que el contenedor web del GlassFish

    Saludos

    Comentario por Lorena Peña — Viernes, febrero 26, 2010 @ 4:54 PM

  4. Si usamos tomcat aun, vamos a cambiar de sistema a solaris sobre sparc , actualmente tenemos aix

    Comentario por Lorena Peña — Viernes, febrero 26, 2010 @ 6:30 PM

  5. Hola Lorena, gracias por leer mi blog y disculpa mi tardanza en contestar. Las preguntas uno y dos te las contesto juntas: GlassFish SI es modular, lo cual le permite tener corriendo únicamente los servicios que necesite en determinado momento. Estos módulos se activan por demanda, asi que no tienes que ir hasta la consola a subir o bajar alguno de ellos. La 3a me imagino que quisiste decir GlassFish vs Tomcat: si es así, si tengo un “White Paper” que habla sobre ello, de hecho me base en el para realizar este post, pero se me ha refundido. Apenas lo encuentre postearé acá mismo el link.

    Comentario por vramirez — Martes, marzo 9, 2010 @ 6:19 AM

  6. gracias por tur respuesta, estoy a la espera de White Paper

    Comentario por Lorena Peña — Martes, marzo 9, 2010 @ 2:08 PM

  7. Hola Lorena, más vale tarde que nunca: al fin encontré el White Paper en el cual me base para hacer el post! Espero aun te sirva. Lo puedes mirar acá: http://www.mediafire.com/?o35s2n42n11m2fp

    Comentario por vramirez — Domingo, agosto 1, 2010 @ 5:35 PM

  8. El Link del White Paper esta roto… tendras algun otro?

    Comentario por Starman — Miércoles, septiembre 7, 2011 @ 1:13 PM


RSS feed for comments on this post. TrackBack URI

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

Blog de WordPress.com.

A %d blogueros les gusta esto: