Heim > Artikel > Backend-Entwicklung > So implementieren Sie einen PHP-Cluster
PHP-Cluster bezieht sich auf viele Server, die dieselbe Arbeit verarbeiten, was sich auf die allgemeine Hardware bezieht. Die Hauptfunktion des SLB-Lastausgleichs besteht beispielsweise darin, dass mehrere Server dieselbe Arbeit verarbeiten.
Der erste Schritt beim Aufbau eines PHP-Clusters ist die Einrichtung des Lastausgleichs. Zuerst benötigen wir drei Hosts:
Nginx-Last: 192.166.5.111 (Empfohlenes Lernen: PHP-Video-Tutorial)
PHP-Anwendung 1: 192.168.5.112
PHP-Anwendung 2: 192.168.5.113
Zuvor müssen wir auf dem Host, auf dem sich die PHP-Anwendung befindet, einen Webserver wie Nginx oder Apache installieren und dann Nginx als Load-In verwenden Front.
Die Kommunikation zwischen Nginx-Last und PHP-Anwendung erfolgt auf der Anwendungsebene und entspricht tatsächlich einem Proxy. Allerdings sind die Dinge jetzt anders.
Durch die Anwendung der Fastcgi-Technologie kann die PHP-Anwendungsschicht die Installation eines Webservers überflüssig machen. Jetzt unterstützt die PHP5.5-Version fpm als internes Modul.
In diesem Fall erfolgt die Kommunikation zwischen der Nginx-Last und der PHP-Anwendung auf der Transportschicht, und Sockets werden für die Kommunikation zwischen beiden verwendet. Dies erfordert natürlich die Unterstützung des fpm-Dienstes.
Das Konzept des Clusters ist nicht kompliziert. Tatsächlich arbeiten mehrere Computer für dasselbe Ziel zusammen. In Webanwendungen stellen mehrere Server Dienste für eine Site bereit.
Der erste Schritt beim Aufbau eines PHP-Clusters besteht darin, den Lastausgleich einzurichten. Zuerst benötigen wir drei Hosts:
Nginx-Last: 192.166.5.111
PHP-Anwendung 1: 192.168.5.112
PHP-Anwendung 2: 192.168.5.113
Bisher mussten wir auf dem Host, auf dem sich die PHP-Anwendung befand, einen Webserver wie Nginx oder Apache installieren und dann Nginx als Last verwenden.
Die Kommunikation zwischen Nginx-Last und PHP-Anwendung erfolgt auf der Anwendungsebene und entspricht tatsächlich einem Proxy. Allerdings sind die Dinge jetzt anders. Durch den Einsatz der Fastcgi-Technologie ist die Installation eines Webservers auf der PHP-Anwendungsebene nicht erforderlich.
Jetzt unterstützt die PHP5.5-Version fpm als internes Modul. In diesem Fall erfolgt die Kommunikation zwischen der Nginx-Last und der PHP-Anwendung auf der Transportschicht, und für die Kommunikation zwischen beiden werden Sockets verwendet. Dies erfordert natürlich die Unterstützung des fpm-Dienstes.
Nginx-Einstellungen
Richten Sie zuerst Nginx (192.168.5.111) ein und bearbeiten Sie die Konfigurationsdatei nginx.conf
http{ …… upstream onmpw_phpApps{ server 192.168.18.88:9000; server 192.168.18.191:9000; } …… Server{ listen 80; server_name load.onmpw.com ##这里是域名 root /www/onmpw …… location ~ \.php$ { root /www/onmpw ##这里是PHP应用所在目录 fastcgi_pass onmpw_phpApps; …… } } }
Das Obige ist die korrekten Einstellungen von Nginx. Es enthält nur die wichtigsten Teile und der Rest entspricht den Einstellungen, die wir normalerweise vornehmen, wenn wir Nginx+PHP als Webdienst verwenden.
Einstellungen des Hosts, auf dem sich PHP befindet
Die Einstellungen hier sind relativ einfach.
Bearbeiten Sie zuerst die Datei php-fpm.conf, ändern Sie die Überwachungs-IP und den Port und starten Sie dann den FPM-Dienst
Host 192.168.5.112
Listen = 192.168.5.112:9000 / /Hier Der Port kann selbst eingestellt werden. Speichern und beenden
# /usr/local/php/sbin/php-fpm //开启服务
Host 192.168.5.113
Listen = 192.168.5.113:9000 # /usr/local/php/sbin/php-fpm
An diesem Punkt sind die PHP-Hosteinstellungen abgeschlossen. Natürlich muss der Code auf jeden der beiden Hosts hochgeladen werden.
Okay, nach den oben genannten Einstellungen wurde ein grundlegender PHP-Cluster eingerichtet.
Das obige ist der detaillierte Inhalt vonSo implementieren Sie einen PHP-Cluster. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!