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

Der Unterschied zwischen Nginx und Apache

步履不停
步履不停Original
2019-06-22 10:31:504158Durchsuche

Der Unterschied zwischen Nginx und Apache

Nginx

Leicht, in C geschrieben, derselbe Webdienst beansprucht 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. 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 erstellt

Apache

Apache's Rewrite ist leistungsfähiger als Nginx, wenn das Rewrite häufig ist , benutze Apache

Apache hat sich bisher entwickelt, es gibt so viele Module, im Grunde kann man alles finden, was man sich vorstellen kann

Apache ist ausgereifter und hat weniger Fehler. Nginx hat relativ mehr Fehler

Apache ist super stabil

Apache hat eine relativ einfache Unterstützung für PHP, die in Verbindung mit anderen Backends verwendet werden muss

Apache Es hat Vorteile bei der Verarbeitung dynamischer Anfragen, aber Nginx ist in dieser Hinsicht nutzlos. Im Allgemeinen müssen dynamische Anforderungen von Apache ausgeführt werden, und Nginx eignet sich für statische und umgekehrte Anforderungen.

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

Zusammenfassung

Der Hauptunterschied zwischen den beiden besteht darin, dass Apache ein Synchrones Multiprozessmodell. Eine Verbindung entspricht einem Prozess, während Nginx asynchron ist. Mehrere Verbindungen (10.000 Ebenen) können einem Prozess entsprechen.

Im Allgemeinen verwenden Sie Nginx für Webdienste, die Leistung erfordern. Wenn Sie keine Leistung benötigen und nur Stabilität wünschen, sollten Sie die verschiedenen Funktionsmodule von Apache in Betracht ziehen. 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 Hauptgrund für die hohe Verarbeitungsleistung von nginx, aber epoll gewinnt nicht in allen Fällen. Wenn es selbst statische Dienste bereitstellt, gibt es nur wenige Dateien und das ausgewählte Modell von Apache leistungsfähiger als Epoll. Dies ist natürlich 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.

Weitere technische Artikel zum Thema Nginx finden Sie in der Spalte Nginx-Tutorial, um mehr darüber zu erfahren!

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen Nginx und Apache. 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