web-dev-qa-db-fra.com

Jetty, Tomcat, Nginx, Geronimo, Glassfish: je suis confus

En tant que nouveau dans l'écosystème Java EE EE, je suis confus avec ces produits qui partagent une énorme quantité de mots-clés. Et la moitié d'entre eux proviennent de la fondation de logiciels Apache.

Quelqu'un peut-il m'adresser une brève explication distinctive pour chacun d'eux?

49
parsa

Jetty et Tomcat sont des conteneurs Web, tandis que Geronimo, Glassfish et JBoss prennent en charge la pile J2EE entière (plus ou moins). Et, tataaa, ils utilisent/incluent Tomcat ou Jetty pour les conteneurs Web. La partie la plus importante d'un serveur J2EE à part entière en dehors du conteneur Web était le EJB - conteneur permettant le déploiement d'EJB, en les faisant fonctionner dans une transaction contexte, etc. Aujourd'hui, J2EE est en fait appelé Java EE. Les EJB d'entité ( JPA ) peuvent s'exécuter en dehors du conteneur EJB , par exemple dans Tomcat, mais en dehors de la gestion des transactions qu'un conteneur EJB fournirait.

34
Jon Martin Solaas

Tomcat et Jetty sont des serveurs Web qui peuvent gérer les servlets, mais pas Java EE.

Glassfish et JBOSS peuvent gérer complètement Java EE.

Et Nginx est un serveur HTTP et un proxy inverse. Vous pouvez par exemple équilibrer la charge de plusieurs instances Glassfish déployées derrière un serveur nginx.

Nginx est également utilisé pour des raisons de sécurité, vous pouvez donc masquer votre serveur d'applications derrière lui.

7
H6.
1
Navi