que - servidor de aplicaciones java
¿Cuál es la diferencia entre Tomcat, JBoss y Glassfish? (8)
Estoy empezando a buscar en Enterprise Java y el libro que estoy siguiendo menciona que usará JBoss. Netbeans se embarca con Glassfish. He usado Tomcat en el pasado.
¿Cuáles son las diferencias entre estos tres programas?
Apache Tomcat es solo un contenedor de serverlet único que no admite para la aplicación Enterprise Java (JEE). JBoss y Glassfish son compatibles con la aplicación JEE, pero Glassfish es mucho más pesado que el servidor JBOSS: diapositiva de referencia
Debe usar GlassFish para aplicaciones empresariales de Java EE . Algunas cosas a considerar:
Un servidor web significa: Manejar solicitudes HTTP (generalmente desde navegadores).
Un Contenedor de Servlets (por ejemplo, Tomcat ) significa: Puede manejar servlets y JSP.
Un servidor de aplicaciones (por ejemplo, GlassFish ) significa: * Puede administrar aplicaciones Java EE (generalmente tanto servlet / JSP como EJB).
Tomcat : está gestionado por la comunidad de Apache: código abierto y tiene dos versiones. Tomcat: perfil web: peso ligero que solo es contenedor de servlets y no admite funciones Java EE como EJB, JMS, etc. Tomcat EE: este es un contenedor certificado para Java EE. esto soporta todas las tecnologías Java EE.
No hay soporte comercial disponible (solo soporte comunitario)
JBoss - Run by RedHat Esta es una compatibilidad de pila completa para JavaEE y es un contenedor certificado de Java EE. Esto incluye Tomcat como contenedor web internamente. Esta versión de la comunidad también tiene dos versiones: Servidor de aplicaciones (AS). Solo tendrá soporte de la comunidad. Servidor de aplicaciones empresariales (EAP). Para esto, puede tener una licencia basada en la suscripción (se basa en la cantidad de Cores que tiene en sus servidores).
Glassfish - Run by Oracle Este también es un contenedor Java EE certificado de pila completa. Esto tiene su propio contenedor web (no Tomcat). Esto viene del propio Oracle, por lo que todas las nuevas especificaciones se probarán e implementarán con Glassfish primero. Por lo tanto, siempre apoyaría la última especificación. No tengo conocimiento de sus modelos de soporte.
JBoss y Glassfish son básicamente un servidor de aplicaciones Java EE completo, mientras que Tomcat es solo un contenedor Servlet. La principal diferencia entre JBoss, Glassfish pero también WebSphere, WebLogic y demás respecto de Tomcat, pero también de Jetty, estaba en la funcionalidad que ofrece un servidor de aplicaciones completo. Cuando tenía un servidor de aplicaciones Java EE de pila completa, puede beneficiarse de toda la implementación del proveedor que elija, y puede beneficiarse de EJB, JTA, CDI (JAVA EE 6+), JPA, JSF, JSP / Servlet, por supuesto. y así. Con Tomcat, por otro lado, solo puede beneficiarse de JSP / Servlet. Sin embargo, hoy en día con un marco avanzado como Spring y Guice, muchas de las ventajas principales de usar un servidor de aplicaciones de pila completa se pueden mitigar, y con el supuesto de que uno de este marco es masculino con Spring Ecosystem, puede beneficiarse de muchos proyecto que en mi experiencia laboral me permitió dejar el uso de un servidor de aplicaciones de pila completa en favor de un servidor de aplicaciones ligero como Tomcat.
Parece un poco desalentador usar Tomcat cuando lees estas respuestas. Sin embargo, lo que la mayoría no menciona es que puede obtener casos de uso idénticos o casi idénticos con tomcat, pero eso requiere que agregue las bibliotecas necesarias (a través de Maven o el sistema de inclusión que use).
He estado ejecutando tomcat con JPA, EJBs con esfuerzos de configuración muy pequeños.
Tanto JBoss como Tomcat son servidores de aplicaciones de servlet de Java, pero JBoss es mucho más. La diferencia sustancial entre los dos es que JBoss proporciona una pila completa de Java Enterprise Edition (Java EE), que incluye Enterprise JavaBeans y muchas otras tecnologías que son útiles para los desarrolladores que trabajan en aplicaciones Java empresariales.
Tomcat es mucho más limitado. Una forma de verlo es que JBoss es una pila Java EE que incluye un contenedor de servlets y un servidor web, mientras que Tomcat, en su mayor parte, es un contenedor de servlets y un servidor web.
Tomcat es simplemente un servidor HTTP y un contenedor de servlet de Java. JBoss y GlassFish son servidores de aplicaciones Java EE completos, que incluyen un contenedor EJB y todas las demás características de esa pila. Por otro lado, Tomcat tiene una huella de memoria más ligera (~ 60-70 MB), mientras que los servidores Java EE pesan cientos de megas. Tomcat es muy popular para aplicaciones web simples o aplicaciones que utilizan marcos como Spring que no requieren un servidor Java EE completo. La administración de un servidor Tomcat es posiblemente más fácil, ya que hay menos partes móviles.
Sin embargo, para las aplicaciones que requieren una pila completa de Java EE (o al menos más piezas que podrían unirse fácilmente a Tomcat) ... JBoss y GlassFish son dos de las ofertas de código abierto más populares (la tercera es Apache Geronimo , sobre la cual se construye la versión gratuita de IBM WebSphere). JBoss tiene una comunidad de usuarios más grande y más profunda, y un código base más maduro. Sin embargo, JBoss se retrasa significativamente con respecto a GlassFish al implementar las especificaciones actuales de Java EE. Además, para aquellos que prefieren un sistema de administración basado en GUI ... La consola de administración de GlassFish es extremadamente elegante, mientras que la mayoría de la administración en JBoss se realiza con una línea de comandos y un editor de texto. GlassFish viene directamente de Sun / Oracle, con todas las ventajas que puede ofrecer. JBoss NO está bajo el control de Sun / Oracle, con todas las ventajas que puede ofrecer.
Tomcat es solo un contenedor de servlets, es decir, implementa solo los servlets y la especificación JSP. Glassfish y JBoss son servidores completos de Java EE (incluidos elementos como EJB, JMS, ...), siendo Glassfish la implementación de referencia de la última pila de Java EE 6, pero JBoss en 2010 aún no lo apoyaba por completo.
jboss y glassfish incluyen un contenedor de servlets (como tomcat), sin embargo, los dos servidores de aplicaciones (jboss y glassfish) también proporcionan un contenedor de frijoles (y algunas otras cosas que también imagino)