Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Gibt es große Leistungsunterschiede zwischen Apache und Nginx?

Gibt es große Leistungsunterschiede zwischen Apache und Nginx?

(*-*)浩
(*-*)浩Original
2019-11-02 11:14:034105Durchsuche

Gibt es große Leistungsunterschiede zwischen Apache und Nginx?

Dies liegt daran, dass Nginx das neueste Epoll- (Linux 2.6-Kernel) und Kqueue- (Freebsd) Netzwerk-E/A-Modell verwendet, während Apache das traditionelle verwendet ausgewähltes Modell verwendet wird. (Empfohlenes Lernen: nginx-Tutorial)

Derzeit verwenden Squid und Memcached unter Linux, die einem hohen gleichzeitigen Zugriff standhalten können, das Epoll-Netzwerk-E/A-Modell.

Um das Lesen und Schreiben einer großen Anzahl von Verbindungen zu bewältigen, ist das von Apache übernommene ausgewählte Netzwerk-E/A-Modell sehr ineffizient.

Im Folgenden wird eine Metapher verwendet, um den Unterschied zwischen dem von Apache verwendeten Select-Modell und dem von Nginx verwendeten Epoll-Modell zu analysieren:

Gibt es große Leistungsunterschiede zwischen Apache und Nginx?

Angenommen, Sie studieren in Hochschule, das Wohnheimgebäude, in dem du wohnst, hat viele Räume und deine Freunde kommen, um dich zu finden.

In der gewählten Variante führt die Gastgeberin Ihre Freunde von Zimmer zu Zimmer, bis sie Sie finden.

Die Epoll-Version der Wohnheimtante notiert zunächst die Zimmernummer jedes Schülers. Wenn Ihr Freund kommt, müssen Sie ihm nur sagen, in welchem ​​Zimmer Sie wohnen, ohne Ihren Freund mitbringen zu müssen Persönlich das Gebäude nach Menschen durchsuchen.

Wenn 10.000 Menschen kommen und ihre Klassenkameraden finden wollen, die in diesem Gebäude wohnen, ist es selbstverständlich, wer in der ausgewählten Version oder der Epoll-Version der Wohnheimtante effizienter ist.

In ähnlicher Weise ist das Abfragen von E/A einer der zeitaufwändigsten Vorgänge. Es ist auch sehr klar, welche Leistung zwischen Select und Epoll höher ist.

Das obige ist der detaillierte Inhalt vonGibt es große Leistungsunterschiede 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