Heim >Backend-Entwicklung >PHP-Problem >Was ist die Lösung für hohe Auslastung in PHP?

Was ist die Lösung für hohe Auslastung in PHP?

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼Original
2019-08-28 16:51:244563Durchsuche

Was ist die Lösung für hohe Auslastung in PHP?

PHP-Hochlastlösung:

Wenn Sie eine Hochlast-Website mit PHP-FPM über FastCGI betreiben, können die folgenden Tipps hilfreich sein Sie : )

Wenn Sie PHP-FPM zum Verwalten von FastCGI auf einer Website mit hoher Auslastung verwenden, können diese Tipps für Sie nützlich sein :)

1. Kompilieren Sie die PHP-Module so wenig wie möglich. das Einfache das Beste (schnell);

Installieren Sie so wenige PHP-Module wie möglich, das Einfachste ist das Beste (schnell).

2. Erhöhen Sie die untergeordnete PHP-FastCGI-Nummer auf 100 oder sogar mehr.

Passen Sie die untergeordnete PHP-FastCGI-Nummer an oben reichen 200 auf einem Server mit 4G-Speicher aus.

Hinweis: Für meine 1g-Testmaschine ist 64 das Beste. Es wird empfohlen, Stresstests zu verwenden, um den besten Wert zu erhalten

3. Verwenden Sie SOCKET PHP FastCGI und geben Sie es in /dev/ ein. shm unter Linux;

Verwenden Sie den Socket, um eine Verbindung zu FastCGI herzustellen. Das Linux-Betriebssystem kann in /dev/shm abgelegt werden.

Verwandte Empfehlungen: „PHP Erste Schritte Tutorial

Hinweis: Legen Sie /tmp/nginx in php-fpm.cnf fest .socket kann über den Socket eine Verbindung zu FastCGI herstellen, und es wird definitiv schneller sein, wenn es im Speicher abgelegt wird es konsistent.

location ~ .*.(php|php5)?$

{

#Ändern Sie die Kommunikationsmethode zwischen Nginx und FastCGI von TCP zu Unix Socket. TCP ist bei hohem gleichzeitigem Zugriff stabiler als Unix Socket, aber Unix Socket ist schneller als TCP.

fastcgi_pass unix:/tmp/php-cgi.sock;

#fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

inc fcgi.conf;

}

4. Erhöhen Sie die „maximal geöffneten Dateien“ von Linux mit dem folgenden Befehl (muss root sein):

# echo 'ulimit -HSn 65536 ′ >> /etc/profile

# echo 'ulimit -HSn 65536 >> /etc/rc.local

# source /etc/profile

Um die Anzahl der vom Linux-Kernel geöffneten Dateien zu erhöhen, können Sie diese Befehle verwenden (muss ein Root-Konto sein)

echo 'ulimit -HSn 65536′ /etc/profile

echo 'ulimit -HSn 65536′ >> /etc/rc.local

source /etc/profile

Hinweis: Ich habe /etc/rc.local geändert und ulimit hinzugefügt - SHn 51200

5. Erhöhen Sie die PHP-FPM-Dateibeschreibung rlimit:

# vi /path/to/php-fpm.conf

Suchen Sie „ 1024

Ändern Sie 1024 in 4096 oder eine höhere Zahl.

Starten Sie PHP-FPM neu.

Erhöhen Sie das Limit für das Öffnen von PHP-FPM Dateideskriptoren:

# vi /path/to/php-fpm.conf

Suchen Sie nach „1024

Ändern Sie 1024 auf 4096 oder höher.

PHP-FPM neu starten.

6. Verwenden Sie einen PHP-Codebeschleuniger, z. B. eAccelerator, XCache und setzen Sie „cache_dir“ auf /dev/shm. Sie können „cache_dir“ auf /dev/shm verweisen

Das obige ist der detaillierte Inhalt vonWas ist die Lösung für hohe Auslastung in PHP?. 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