Lassen Sie uns zunächst darauf achten, wie PHP-FPM funktioniert:
static :表示在 `php-fpm` 运行时直接 `fork` 出 `pm.max_chindren` 个子进程, dynamic:表示,运行时 `fork` 出 `start_servers` 个进程,随着负载的情况,动态的调整,最多不超过 `max_children` 个进程。
Es wird generell empfohlen, Static zu verwenden.
Der Vorteil besteht darin, dass die Lastsituation nicht dynamisch ermittelt werden muss und die Leistung verbessert wird.
Der Nachteil besteht darin, dass mehr Systemspeicherressourcen beansprucht werden.
Die Anzahl der untergeordneten PHP-FPM-Prozesse: Je mehr, desto besser?
Natürlich nicht, pm.max_chindren, es gibt zu viele Prozesse, was die Kosten für Prozessmanagement und Kontextwechsel erhöht. Noch wichtiger ist, dass die Anzahl der PHP-FPM-Prozesse, die gleichzeitig ausgeführt werden können, die Anzahl der CPUs nicht überschreitet.
Wie Sie es einstellen, hängt von Ihrem Code ab
Wenn der Code CPU-intensiv ist, darf pm.max_chindren die Anzahl der Kerne der CPU nicht überschreiten. Wenn nicht, ist es sehr ratsam, den Wert von pm.max_chindren so festzulegen, dass er größer ist als die Anzahl der Kerne der CPU.
Formel:
Zwischen N + 20 % und M/m.
Parameterbeschreibung:
N ist die Anzahl der CPU-Kerne.
M ist die Menge an Speicher, die PHP nutzen kann.
m ist die durchschnittliche Speichermenge, die von jedem PHP-Prozess verwendet wird.
ist für den dynamischen Modus geeignet.
statische Methode: M / (m * 1.2)
Natürlich gibt es auch eine sichere Möglichkeit, max_children zu konfigurieren. Gilt für den statischen Modus.
1. Stellen Sie zunächst max_childrenren auf einen relativ großen Wert ein.
2. Nachdem Sie eine Zeit lang stabil gelaufen sind, beobachten Sie die maximale Anzahl aktiver Prozesse im Status von php-fpm
3. Konfigurieren Sie dann „max_children“ so, dass sie größer sind.
pm.max_requests
: Bezieht sich auf die Anzahl der Anfragen, die jeder untergeordnete Prozess nach der Verarbeitung neu startet. Dieser Parameter kann theoretisch nach Belieben eingestellt werden. Um jedoch das Risiko von Speicherverlusten zu vermeiden, ist es besser, eine angemessene Zahl festzulegen.
Empfohlenes Video-Tutorial: PHP-Video-Tutorial
Das obige ist der detaillierte Inhalt vonWie viele Prozesse öffnet PHP normalerweise?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!