Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Der Unterschied zwischen Apache und Nginx

Der Unterschied zwischen Apache und Nginx

(*-*)浩
(*-*)浩Original
2019-10-29 13:56:499334Durchsuche

Der Unterschied zwischen Apache und Nginx

Unterschied

Der Hauptunterschied zwischen den beiden besteht darin, dass Apache ein synchrones Multiprozessmodell ist, eine Verbindung entspricht einer Prozess und Nginx Es ist asynchron, mehrere Verbindungen (10.000 Ebenen) können einem Prozess entsprechen (Empfohlenes Lernen: Apache verwenden )

Im Allgemeinen Webdienste, die erfordern Leistung, verwenden Sie Nginx. Wenn Sie keine Leistung benötigen und nur Stabilität wünschen, sollten Sie Apache in Betracht ziehen. Die verschiedenen Funktionsmodule des letzteren sind besser implementiert als das erstere. Das SSL-Modul ist beispielsweise besser als das erstere und verfügt über mehr konfigurierbare Elemente.

Das Netzwerk-E/A-Modell von epoll (kqueue auf freebsd) ist der grundlegende Grund für die hohe Verarbeitungsleistung von Nginx, aber epoll gewinnt nicht in allen Fällen. Wenn es statische Dienste bereitstellt, werden nur wenige Dateien von Apache ausgewählt Das Modell ist möglicherweise leistungsfähiger als Epoll.

Natürlich ist dies nur eine Annahme, die auf den Prinzipien des Netzwerk-IO-Modells basiert. Die tatsächliche Anwendung muss noch in der Praxis getestet werden.

Eine allgemeinere Lösung besteht darin, Nginx am Front-End zu verwenden, um Parallelität zu verhindern, und den Apache-Cluster am Back-End, was besser zusammenarbeitet.

Apache

Apache's Rewrite ist leistungsfähiger als Nginx. Wenn Rewrite häufig vorkommt, verwenden Sie Apache

Apache hat sich bis heute weiterentwickelt und verfügt über viele Module . Sie können im Grunde alles finden, was Sie sich vorstellen können

Apache ist ausgereifter und hat weniger Fehler, während Nginx relativ mehr Fehler hat

Apache ist super stabil

Apache hat relativ Einfache Unterstützung für PHP, die von Nginx benötigt wird. Die Verwendung von

Apache mit anderen Backends hat Vorteile bei der Verarbeitung dynamischer Anfragen, aber Nginx ist in dieser Hinsicht nutzlos. Im Allgemeinen müssen dynamische Anfragen von Apache durchgeführt werden, und Nginx ist dafür geeignet statisch und umgekehrt.

Apache ist immer noch der Mainstream, mit umfangreichen Funktionen, ausgereifter Technologie und Entwicklungsgemeinschaft

Nginx

Leicht, mit C Writing, dem gleichen Webdienst belegt weniger Speicher und Ressourcen

Anti-Parallelität, Nginx verwendet Epoll und Kqueue als Entwicklungsmodell, die Verarbeitung von Anforderungen erfolgt asynchron und nicht blockierend, und die Ladekapazität ist viel höher als bei Apache, während Apache blockiert Typ. Bei hoher Parallelität kann Nginx einen geringen Ressourcenverbrauch und eine hohe Leistung aufrechterhalten, während Apache anfällig für einen Anstieg der Anzahl von Prozessen und Denial-of-Service ist, wenn die PHP-Verarbeitung langsam ist oder der Front-End-Druck hoch ist.

Nginx verarbeitet statische Dateien gut und die statische Verarbeitungsleistung ist mehr als dreimal höher als die von Apache.

Das Design von Nginx ist hochgradig modular und das Schreiben von Modulen ist relativ einfach.

Nginx Die Konfiguration ist einfach und die reguläre Konfiguration ermöglicht viele Dinge. Nach dem Ändern der Konfiguration können Sie mit -t testen, ob es Probleme mit der Konfiguration gibt. Wenn Sie feststellen, dass die Konfiguration falsch ist beim Neustart stürzt es ab

nginx ist ein Lastausgleichsserver und unterstützt 7 Ebenen des Lastausgleichs

nginx selbst ist ein Reverse-Proxy-Server und kann als sehr guter Mail-Proxy verwendet werden Server

Es ist besonders einfach zu starten und kann fast 7*24 ohne Unterbrechung laufen, selbst wenn es läuft. Es ist mehrere Monate lang kein Neustart erforderlich und die Softwareversion kann ohne Unterbrechung des Dienstes aktualisiert werden

Die Community ist aktiv und verschiedene Hochleistungsmodule werden schnell produziert

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Apache und Nginx. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn