Différence entre serveur Web, conteneur Web et serveur d’applications

S’il vous plaît dites-moi la différence entre serveur Web, conteneur Web et serveur d’applications.

Votre question est similaire à ci-dessous:

Quelle est la différence entre un serveur d’applications et un serveur Web?

En Java: conteneur Web ou conteneur de servlet ou moteur de servlet: permet de gérer les composants tels que Servlets, JSP. C’est une partie du serveur web.

Serveur Web ou Serveur HTTP: Un serveur capable de gérer les requêtes HTTP, envoyé par un client et de répondre avec une réponse HTTP.

Application Server ou App Server: peut gérer toutes les opérations d’application entre les utilisateurs et les applications ou bases de données de back-end de l’entreprise. Il est souvent considéré comme faisant partie d’une application à trois niveaux avec:

Une application Web s’exécute dans un conteneur Web d’un serveur Web. Le conteneur Web fournit l’environnement d’exécution via des composants fournissant un contexte de dénomination et une gestion du cycle de vie. Certains serveurs Web peuvent également fournir des services supplémentaires, tels que le contrôle de la sécurité et de la concurrence. Un serveur Web peut fonctionner avec un serveur EJB pour fournir certains de ces services. Un serveur Web n’a toutefois pas besoin d’être situé sur le même ordinateur qu’un serveur EJB.

Les applications Web sont composées de composants Web et d’autres données telles que les pages HTML. Les composants Web peuvent être des servlets, des pages JSP créées avec la technologie JavaServer Pages ™, des filtres Web et des écouteurs d’événement Web. Ces composants s’exécutent généralement sur un serveur Web et peuvent répondre aux requêtes HTTP des clients Web. Les servlets, les pages JSP et les filtres peuvent être utilisés pour générer des pages HTML constituant l’interface utilisateur d’une application. Ils peuvent également être utilisés pour générer du XML ou d’autres données de format consommées par d’autres composants d’application.

Source: http://www.service-architecture.com/articles/application-servers/j2ee_web_server_or_container.html

Serveur Web: il fournit une réponse HTTP et HTTP Request. Il gère les requêtes du client uniquement via le protocole HTTP. Il contient un conteneur Web. Application Web principalement déployée sur le serveur Web. EX: Servlet JSP

Conteneur Web: il conserve le cycle de vie de l’object Servlet. Appelle la méthode de service pour cet object servlet. passer l’object HttpServletRequest et HttpServletResponse

Serveur d’applications: il contient une grande application d’entreprise dotée d’une grande logique métier. Il est lourd ou contient des applications lourdes. Ex: EJB

Le conteneur Web, également appelé conteneur Servlet, est le composant d’un serveur Web qui interagit avec les servlets Java. Un conteneur Web est chargé de gérer le cycle de vie des servlets, de mapper une URL vers un servlet particulier et de garantir que le demandeur d’URL dispose des droits d’access appropriés.

La principale différence entre les conteneurs Web et le serveur d’applications est que la plupart des conteneurs Web, tels qu’Apache Tomcat, implémentent uniquement des JSR de base tels que Servlet, JSP, JSTL, sur lesquels les serveurs d’applications implémentent l’intégralité de la spécification Java EE. Chaque serveur d’application contient un conteneur Web.

Les conteneurs Web sont chargés de fournir l’environnement d’exécution aux applications Web. Il contient des composants qui fournissent un contexte de nommage et gère le cycle de vie d’une application Web. Les conteneurs Web font partie d’un serveur Web et traitent généralement la demande de l’utilisateur et envoient une réponse statique.

Les conteneurs de servlet sont ceux où résident les composants créés par JSP. Ils sont fondamentalement responsables de fournir du contenu dynamic selon la demande de l’utilisateur. Fondamentalement, les conteneurs Web répondent avec un contenu statique conformément à la demande de l’utilisateur, mais les servlets peuvent créer les pages dynamics.