Heim >Backend-Entwicklung >PHP-Tutorial >Vergleich der beiden Bereitstellungsmethoden von PHP und Nginx (Bild)

Vergleich der beiden Bereitstellungsmethoden von PHP und Nginx (Bild)

黄舟
黄舟Original
2017-06-18 09:31:461500Durchsuche

In diesem Artikel werden hauptsächlich relevante Informationen zum Vergleich der beiden Bereitstellungsmethoden von Nginx und PHP vorgestellt. Freunde, die sie benötigen, können darauf verweisen .

Detaillierte Erläuterung des Vergleichs zwischen den beiden Bereitstellungsmethoden von Nginx und PHP

2 BereitstellungsmethodenEinführung

Der erste Typ

  • Ein Nginx-Server im Vordergrund für HTTP-Reverse-Proxy und Lastausgleich

  • Zurück Nginx von Nether Server stellt Webdienste bereit und ruft den von php-fpm bereitgestellten schnellen CGI-Dienst auf

  • Diese Bereitstellungsmethode ist die gebräuchlichste. Webdienste und PHP-Dienste sind beide gleich Server. Bereitstellung

Zweiter Typ

  1. Platzieren Sie 1 Nginx-Server für den Webdienst

  2. Der Back-Server stellt nur den PHP-FPM-Dienst für den Aufruf des Nginx-Servers bereit, um einen Lastausgleich zu erreichen

  3. wie unten gezeigt:

Vergleich

Aus Sicht des Systemdesigns

Die erste Bereitstellungsmethode eignet sich für große, mittlere und kleine Websites Das zweite Problem besteht darin, dass unterschiedliche Dienste auf verschiedenen Servern bereitgestellt werden, es gibt jedoch mehrere Probleme:

Front-End-Nginx fungiert als Webdienst Statische

Ressourcen, Komprimierungsübertragung,
    Caching
  • -Einstellungen usw. sind hier ebenfalls konzentriert. Der Druck wird groß sein und es kann leicht zu einem Engpass kommen >

    Wenn die statischen Ressourcen im CDN gespeichert sind und keine HTTP-Komprimierungsübertragung erfordern, ist diese Bereitstellungsmethode relativ sinnvoll Diese Bereitstellungsmethode kann auch die beiden oben genannten Punkte erben B. Nginx-Lastausgleich und Reverse-Proxy in der Mitte, und der PHP-FPM-Dienst wird im Hintergrund bereitgestellt.

  • Im Vergleich zur zweiten Bereitstellungsmethode erfordert die erste Methode eine mehr Interaktion zwischen Prozessen.

  • Gemäß der ersten Bereitstellungsmethode leitet der Nginx-Reverse-Proxy diese zuerst an den Nginx-Webdienst weiter (über das Netzwerk) und Der Webdienst interagiert mit PHP-FPM über das Fastcgi-Protokoll (Interprozessinteraktion); Der Dienst interagiert direkt mit PHP-FPM über das Netzwerk

In der ersten Bereitstellung erfolgt die Interaktion über das Netzwerk über das HTTP-Protokoll, die zweite Art der Interaktion über das Netzwerk ist Fast-CGI Protokoll. Wie vergleichen sich diese beiden Protokolle?

    Fast-CGI-Datenpakete sind etwas größer als HTTP, und das Fast-CGI-Protokoll überträgt mehr Parameterinformationen, Übertragungssteuerungsinformationen usw. als HTTP. Das schnelle CGI-Protokoll ist strenger formatiert als das HTTP-Protokoll und lässt sich schneller analysieren. Aus Betriebs- und Wartungssicht
  1. Die erste ist die gebräuchlichste Bereitstellungsmethode, die einfach und einheitlich ist. Die Dienste auf allen Servern, die Webdienste bereitstellen, sind isomorph, was monoton und umfangreich ist.

  2. Die zweite besteht darin, Nginx und PHP-fpm separat bereitzustellen, und die Verteilung verschiedener Dienste auf dem Servercluster ist detaillierter. Wenn Sie die Druckverteilung in Webdiensten zählen, können Sie Hardwareressourcen präziser nutzen. Auch die Betriebs- und Wartungskosten sind höher.
  3. Aus Entwicklungs- und Testperspektive

Beide Bereitstellungsmethoden sind nicht für Entwicklungs- oder Testumgebungen geeignet.

In der Entwicklungs- und Testumgebung können Nginx und PHP auf einem Server bereitgestellt werden, ohne Reverse-Proxy und Lastausgleich.

Zusammenfassung

Wenn es sich um eine LAMP-Umgebungsbereitstellung handelt, ist der erste Typ häufiger. Wenn es sich nicht um LAMP handelt, interagiert Nginx mit anderen FastCGI-Diensten wie C/C++- und Java-FastCGI-Programmen. In großen Netzwerkanwendungen ist eine Bereitstellung ähnlich der zweiten Variante üblich. Die getrennte Bereitstellung verschiedener Dienste vereinfacht die Netzwerkstruktur des Systems und erleichtert die Wartung.

Das obige ist der detaillierte Inhalt vonVergleich der beiden Bereitstellungsmethoden von PHP und Nginx (Bild). 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