nginx
Nginx (Engine x) ist ein leistungsstarker HTTP- und Reverse-Proxy-Webserver und bietet auch IMAP/POP3/SMTP-Dienste. Nginx wurde von Igor Sesoev für Russlands am zweithäufigsten besuchte Website Rambler.ru (russisch: Рамблер) entwickelt. Die erste öffentliche Version 0.1.0 wurde am 4. Oktober 2004 veröffentlicht.
Es veröffentlicht Quellcode unter einer BSD-ähnlichen Lizenz und ist für seine Stabilität, seinen umfangreichen Funktionsumfang, Beispielkonfigurationsdateien und seinen geringen Systemressourcenverbrauch bekannt. Am 1. Juni 2011 wurde Nginx 1.0.4 veröffentlicht.
Nginx ist ein leichter Webserver/Reverse-Proxy-Server und E-Mail-Proxyserver (IMAP/POP3), veröffentlicht unter dem BSD-ähnlichen Protokoll. Seine Merkmale sind, dass es weniger Speicher beansprucht und über starke Parallelitätsfähigkeiten verfügt. Tatsächlich sind die Parallelitätsfähigkeiten von Nginx unter Webservern desselben Typs besser geeignet. Zu den Benutzern von Nginx-Websites auf dem chinesischen Festland gehören: Baidu, JD.com, Sina, NetEase. Tencent, Taobao usw.
Empfohlener Kurs: Java-Tutorial.
Tomcat
Tomcat ist ein Kernprojekt im Jakarta-Projekt der Apache Software Foundation, das gemeinsam von Apache, Sun und anderen Unternehmen und Einzelpersonen entwickelt wurde. Dank der Beteiligung und Unterstützung von Sun können die neuesten Servlet- und JSP-Spezifikationen immer in Tomcat widergespiegelt werden. Tomcat 5 unterstützt die neuesten Servlet 2.4- und JSP 2.0-Spezifikationen. Da Tomcat über fortschrittliche Technologie und stabile Leistung verfügt und kostenlos ist, ist es bei Java-Enthusiasten sehr beliebt und wird von einigen Softwareentwicklern anerkannt, was es zu einem beliebten Webanwendungsserver macht.
Der Tomcat-Server ist ein kostenloser Open-Source-Webanwendungsserver. Er wird häufig in kleinen und mittleren Systemen und in Situationen verwendet, in denen nicht viele Benutzer gleichzeitig darauf zugreifen ist ein ideales Werkzeug für die Entwicklung und die erste Wahl für das Debuggen von JSP-Programmen. Für einen Anfänger kann man sich das so vorstellen: Wenn der Apache-Server auf einem Computer konfiguriert ist, kann er verwendet werden, um auf Zugriffsanfragen für HTML-Seiten (eine Anwendung unter der Standard Universal Markup Language) zu reagieren. Tatsächlich ist Tomcat eine Erweiterung des Apache-Servers, wird jedoch beim Ausführen unabhängig ausgeführt. Wenn Sie also Tomcat ausführen, wird es tatsächlich als separater Prozess von Apache ausgeführt.
Der Trick besteht darin, dass Apache bei korrekter Konfiguration die HTML-Seiten bereitstellt und Tomcat tatsächlich die JSP-Seiten und Servlets ausführt. Darüber hinaus verfügt Tomcat wie Webserver wie IIS über die Funktion, HTML-Seiten zu verarbeiten. Darüber hinaus ist es ein Servlet- und JSP-Container. Ein unabhängiger Servlet-Container ist der Standardmodus von Tomcat. Allerdings ist die Fähigkeit von Tomcat, mit statischem HTML umzugehen, nicht so gut wie die des Apache-Servers. Die neueste Version von Tomcat ist derzeit 9.0.
Der Unterschied zwischen Nginx und Tomcat
Nginx wird häufig als statischer Inhaltsdienst und Proxyserver verwendet, um externe Anforderungen direkt an nachfolgende Anwendungsdienste weiterzuleiten, während Tomcat mehr ist Wird häufig als Anwendungscontainer verwendet, in dem Java-Webanwendungen ausgeführt werden können. Er entspricht der gleichen Ebene wie JBoss, Jetty und andere.
Nginx kann jedoch auch Anwendungsfunktionen durch Modulentwicklung bereitstellen, und Tomcat kann auch direkt HTTP-Dienste bereitstellen. Es wird normalerweise in Intranets und Szenarien verwendet, die keine kleinen Dienste wie Flusskontrolle erfordern.
Genau genommen sollte Nginx „HTTP-Server“ heißen, während Tomcat ein „Anwendungsserver“ oder genauer gesagt ein Container für „Servlet/JSP“-Anwendungen (Ruby/Python-Anwendungen, die in anderen Sprachen entwickelt wurden) ist kann nicht direkt auf Tomcat ausgeführt werden).
Ein HTTP-Server befasst sich mit der Übertragung und Zugriffskontrolle auf der HTTP-Protokollebene, sodass Sie auf Apache/Nginx Funktionen wie Proxy und Lastausgleich sehen können. Der Client greift über den HTTP-Server auf auf dem Server gespeicherte Ressourcen (HTML-Dateien, Bilddateien usw.) zu. Durch die CGI-Technologie können die verarbeiteten Inhalte auch über einen HTTP-Server verteilt werden, ein HTTP-Server überträgt die Dateien auf dem Server jedoch immer nur originalgetreu über das HTTP-Protokoll an den Client.
Der Anwendungsserver ist ein Container für die Anwendungsausführung. Es muss zunächst die Laufzeit der Entwicklungssprache (für Tomcat ist es Java) unterstützen, um sicherzustellen, dass die Anwendung normal auf dem Anwendungsserver ausgeführt werden kann. Zweitens muss es anwendungsbezogene Spezifikationen wie Klassenbibliotheken und Sicherheitsfunktionen unterstützen. Für Tomcat ist es notwendig, Standardklassenbibliotheken, Schnittstellen usw. bereitzustellen, die für den JSP/Sevlet-Betrieb erforderlich sind. Der Einfachheit halber integrieren Anwendungsserver häufig HTTP-Serverfunktionen, sind jedoch nicht so leistungsstark wie professionelle HTTP-Server. Daher laufen Anwendungsserver häufig hinter HTTP-Servern, führen Anwendungen aus und wandeln dynamische Inhalte in statische Inhalte um, die HTTP-Server an Clients verteilen.
Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Nginx und Tomcat. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!