Unterschied zwischen Webserver, Webcontainer und Anwendungsserver


95

Bitte teilen Sie mir den Unterschied zwischen Webserver, Webcontainer und Anwendungsserver mit.



Vielen Dank für die Antwort. Ich habe diese Links durchgesehen und möchte Sie eine Sache fragen. Können wir sagen, dass Tomcat ein Anwendungsserver ist
Gautam

Nein, Tomcat ist ein Servlet-Container.
David Grant

Antworten:


64

Ihre Frage ähnelt der folgenden:

Was ist der Unterschied zwischen Anwendungsserver und Webserver?

In Java: Web Container oder Servlet Container oder Servlet Engine: wird zum Verwalten von Komponenten wie Servlets, JSP verwendet. Es ist ein Teil des Webservers.

Webserver oder HTTP-Server: Ein Server, der HTTP-Anforderungen verarbeiten kann, von einem Client gesendet wird und mit einer HTTP-Antwort antwortet.

Anwendungsserver oder Anwendungsserver: Kann alle Anwendungsvorgänge zwischen Benutzern und den Back-End-Geschäftsanwendungen oder -Datenbanken eines Unternehmens verarbeiten. Es wird häufig als Teil einer dreistufigen Anwendung mit folgenden Elementen angesehen: Präsentationsebene, Logikschicht, Datenschicht


Vielen Dank für die Antwort. Können wir sagen, dass Tomcat ein Anwendungsserver ist?
Gautam

Apache Tomcat ist Servlet Engine und IBM - WebSphere Application Server ist ein Beispiel für Application Server
DomincJune

Apache HTTPD ist ein Webserver
atish shimpi

5
Apache HTTPD ist ein Webserver, Apache Tomcat ist ein Webcontainer, bei dem es sich tatsächlich um Apach HTTPD + eine Servlet Engine handelt. Ein Java-Anwendungsserver mit der vorherigen Konfiguration wäre: Apache Tomcat + EJB-Container + APIs (JDBC, JNDI, JTA / JTS, JCA, JMX, JAAS, Java Mail, JMS). In einem Webcontainer werden nur WARs ausgeführt, auf einem Anwendungsserver EARs.
ziMtyth

10

Webserver: Es bietet HTTP-Anforderung und HTTP-Antwort. Anforderungen vom Client werden nur über das HTTP-Protokoll verarbeitet. Es enthält Web Container. Webanwendung wird hauptsächlich auf dem Webserver bereitgestellt. EX: Servlet JSP

Webcontainer: Er verwaltet den Lebenszyklus des Servlet-Objekts. Ruft die Dienstmethode für dieses Servlet-Objekt auf. Übergeben Sie das Objekt HttpServletRequest und HttpServletResponse

Anwendungsserver: Er enthält Big Enterprise-Anwendungen mit Big Business-Logik. Es ist schwer oder es hält schwere Anwendungen. Beispiel: EJB


8

Eine Webanwendung wird in einem Webcontainer eines Webservers ausgeführt. Der Webcontainer stellt die Laufzeitumgebung über Komponenten bereit, die den Namenskontext und das Lebenszyklusmanagement bereitstellen. Einige Webserver bieten möglicherweise auch zusätzliche Dienste wie Sicherheit und Parallelitätskontrolle. Ein Webserver kann mit einem EJB-Server zusammenarbeiten, um einige dieser Dienste bereitzustellen. Ein Webserver muss sich jedoch nicht auf demselben Computer wie ein EJB-Server befinden.

Webanwendungen bestehen aus Webkomponenten und anderen Daten wie HTML-Seiten. Webkomponenten können Servlets, mit der JavaServer Pages ™ -Technologie erstellte JSP-Seiten, Webfilter und Listener von Webereignissen sein. Diese Komponenten werden normalerweise auf einem Webserver ausgeführt und können auf HTTP-Anforderungen von Webclients antworten. Servlets, JSP-Seiten und Filter können verwendet werden, um HTML-Seiten zu generieren, die die Benutzeroberfläche einer Anwendung darstellen. Sie können auch zum Generieren von XML- oder anderen Formatdaten verwendet werden, die von anderen Anwendungskomponenten verwendet werden.

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


4

Der Webcontainer, auch als Servlet-Container bezeichnet, ist die Komponente eines Webservers, der mit Java-Servlets interagiert. Ein Webcontainer ist dafür verantwortlich, den Lebenszyklus von Servlets zu verwalten, eine URL einem bestimmten Servlet zuzuordnen und sicherzustellen, dass der URL-Anforderer über die richtigen Zugriffsrechte verfügt.


1

Der Hauptunterschied zwischen den Webcontainern und dem Anwendungsserver besteht darin, dass die meisten Webcontainer wie Apache Tomcat nur grundlegende JSR wie Servlet, JSP und JSTL implementieren, wobei Anwendungsserver die gesamte Java EE-Spezifikation implementieren. Jeder Anwendungsserver enthält einen Webcontainer.


0

Web Container + HTTP-Anforderungsbehandlung = WebServer

Webserver + EJB + (Messaging + Transaktionen + usw.) = ApplicaitonServer


-1

Webcontainer sind dafür verantwortlich, die Laufzeitumgebung für Webanwendungen bereitzustellen. Es enthält Komponenten, die den Namenskontext bereitstellen und den Lebenszyklus einer Webanwendung verwalten. Webcontainer sind Teil eines Webservers und verarbeiten im Allgemeinen die Benutzeranforderung und senden eine statische Antwort.

Servlet-Container sind diejenigen, in denen sich von JSP erstellte Komponenten befinden. Sie sind grundsätzlich dafür verantwortlich, dynamische Inhalte gemäß der Benutzeranforderung bereitzustellen. Grundsätzlich antworten Webcontainer mit einem statischen Inhalt gemäß der Benutzeranforderung, aber Servlets können die dynamischen Seiten erstellen.


-1

Die Grundidee des Servlet-Containers besteht darin, mithilfe von Java die Webseite auf der Serverseite mithilfe von Servlets und JSP dynamisch zu generieren. Der Servlet-Container ist also im Wesentlichen Teil eines Webservers, der mit den Servlets interagiert.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.