Zusammenfassung: Unterschiede zwischen Apache/Tomcat/JBOSS/Nginx.
1. Apache ist ein Webserver und Tomcat ist ein Anwendungsserver (Java). Tomcat wird häufig in kleinen und mittelgroßen Systemen und in Situationen verwendet, in denen es nicht viele Benutzer mit gleichzeitigem Zugriff gibt. Apache unterstützt statische Seiten und Tomcat unterstützt dynamische Seiten.
2. Jetty: Der Tomcat-Kernel dient als Servlet-Container-Engine und wird überprüft und optimiert. Er kann auf große und mittlere Systeme angewendet werden. Es kann Datenbankverbindungspooldienste bereitstellen und unterstützt auch die Integration anderer Webtechnologien wie PHP und .NET. 3. JBoss ist ein Container und Server, der EJB verwaltet, aber JBoss-Kerndienste bieten keine Unterstützung für Servlet/. JSP-WEB-Container, der im Allgemeinen in Verbindung mit Tomcat oder Jetty verwendet wird.
4. Nginx ist derzeit der leistungsstärkste HTTP-Server. Seine Merkmale sind, dass es weniger Speicher belegt und über starke Parallelitätsfähigkeiten verfügt. Nginx-Code ist komplett von Grund auf in der C-Sprache geschrieben.
Apache unterstützt statische Seiten und Tomcat unterstützt dynamische Seiten wie Servlets usw.
Im Allgemeinen, wenn Sie Apache+ verwenden Tomcat, Apache wird nur als Weiterleitung verwendet, die Verarbeitung von JSP wird von Tomcat übernommen.
Apche kann PHPcgiperl unterstützen, aber wenn Sie Java verwenden möchten, benötigen Sie Tomcat, um es im Apache-Hintergrund zu unterstützen und Java-Anfragen von Apache zur Verarbeitung an Tomcat weiterzuleiten.
Apache ist ein Webserver und Tomcat ist ein Anwendungsserver (Java). Es ist nur ein Servlet-Container (JSP wird auch in Servlet übersetzt). Er kann als Erweiterung von Apache betrachtet werden, kann jedoch unabhängig von Apache ausgeführt werden .
◆Beide werden von der Apache-Organisation entwickelt
◆Beide verfügen über HTTP-Dienstfunktionen
◆Beide sind kostenlos
Unterschiede:
Apache wird speziell zur Bereitstellung von HTTP-Diensten und zugehörigen Konfigurationen (wie virtuelle Hosts, URL-Weiterleitung usw.) verwendet.
Tomcat wird gemäß den JSP- und Servlet-Standards von Java EE entwickelt. Ein JSP-Server: Tomcat wird häufig in kleinen und großen Unternehmen verwendet mittelgroße Systeme und Situationen, in denen es nicht viele Benutzer mit gleichzeitigem Zugriff gibt.
Jetty behebt viele der Mängel von Tomcat durch die Verwendung eines Hybridmodells aus APR und nativen Tomcat-Technologien. Das gemischte Technologiemodell bietet das beste Threading und Event-Handling der neuesten Betriebssystemtechnologien. Dadurch erreicht Jetty Skalierbarkeits- und Leistungsparameter, die denen des lokalen Apache HTTP-Servers oder IIS entsprechen oder diese übertreffen. Beispielsweise kann Jetty Datenbankverbindungspooldienste bereitstellen, die nicht nur Java-Technologien wie JSP, sondern auch die Integration anderer Webtechnologien wie PHP und .NET unterstützen.
Nginx hat eine hohe Stabilität. Wenn andere HTTP-Server auf Zugriffsspitzen stoßen oder jemand in böswilliger Absicht eine langsame Verbindung initiiert, kann dies auch dazu führen, dass der physische Speicher des Servers erschöpft ist, häufig ausgetauscht wird und die Antwort verloren geht, und der Server kann nur neu gestartet werden. Wenn Apache beispielsweise derzeit mehr als 200 Prozesse hat, wird die Web-Reaktionsgeschwindigkeit offensichtlich sehr langsam sein. Nginx verwendet eine Technologie zur schrittweisen Ressourcenzuweisung, wodurch die CPU- und Speicherauslastung sehr gering ist. Nginx gibt offiziell an, dass es 10.000 inaktive Verbindungen unterhält und nur 2,5 MB Speicher belegt, sodass Angriffe wie DOS für Nginx grundsätzlich nutzlos sind. In Bezug auf die Stabilität ist Nginx besser als Lighthttpd.
JBoss und der Webserver werden in derselben virtuellen Java-Maschine ausgeführt. Nachdem JBoss ausgeführt wurde, ermöglicht die Hintergrundverwaltungsschnittstelle Servlet, EJB aufzurufen, ohne das Netzwerk zu durchlaufen, wodurch die Betriebseffizienz erheblich verbessert und die Sicherheitsleistung verbessert wird.