Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.php > #4904 > unrolled thread
| Started by | Tim Ritberg <tim@server.invalid> |
|---|---|
| First post | 2023-03-16 18:40 +0100 |
| Last post | 2023-03-17 19:13 +0100 |
| Articles | 3 — 2 participants |
Back to article view | Back to de.comp.lang.php
PHP fpm pool stirbt leise Tim Ritberg <tim@server.invalid> - 2023-03-16 18:40 +0100
Re: PHP fpm pool stirbt leise Arno Welzel <usenet@arnowelzel.de> - 2023-03-17 15:42 +0100
Re: PHP fpm pool stirbt leise Tim Ritberg <tim@server.invalid> - 2023-03-17 19:13 +0100
| From | Tim Ritberg <tim@server.invalid> |
|---|---|
| Date | 2023-03-16 18:40 +0100 |
| Subject | PHP fpm pool stirbt leise |
| Message-ID | <tuvkar$23d91$1@tota-refugium.de> |
Hi! Ich habe hier einen Server mit einigen kleinen Webpressseiten und PHP 7.4 als FPM laufen. Der Traffic ist niedrig. Denn noch scheint ein Wordpress rechenlastig zu sein, ich habe es in einen eigenen Pool geschoben. Da ist mir aufgefallen, dass die Worker/Forks gar nicht ihre maximale Lebenzeit (500 Requests) erreichen und schon so mit ca. 200 sterben. Das Log auf notice sagt dazu gar nichts, erst mit debug kommt sowas: "pm_children_bury(), line 261: [pool $bla] child 8559 has been killed by the process management after 144.199528 seconds from start" Der andere Pool loggt normal über notice: "child $bla exited with code 0 after 10841.346 seconds from start" Über die Statistic /status kann ich die aufgelaufenen Requests per Pool/child sehen. Der process manager läuft als dynamic. Ideen dazu? Tim
[toc] | [next] | [standalone]
| From | Arno Welzel <usenet@arnowelzel.de> |
|---|---|
| Date | 2023-03-17 15:42 +0100 |
| Message-ID | <k7jcioFnqakU11@mid.individual.net> |
| In reply to | #4904 |
Tim Ritberg, 2023-03-16 18:40: > Ich habe hier einen Server mit einigen kleinen Webpressseiten und PHP > 7.4 als FPM laufen. PHP 7.4 ist end-of-life. Ich würde prüfen, ob man die zumindest auf PHP 8.0 umstellen kann. WordPress selbst läuft mit PHP 8.0, nur manche AddOns sind vielleicht noch nicht soweit - aber hier laufen fast alle WordPress-Sites schon mit PHP 8.0, manche auch schon mit PHP 8.1. > Der Traffic ist niedrig. Denn noch scheint ein Wordpress rechenlastig zu > sein, ich habe es in einen eigenen Pool geschoben. > Da ist mir aufgefallen, dass die Worker/Forks gar nicht ihre maximale > Lebenzeit (500 Requests) erreichen und schon so mit ca. 200 sterben. > > Das Log auf notice sagt dazu gar nichts, erst mit debug kommt sowas: > "pm_children_bury(), line 261: [pool $bla] child 8559 has been killed by > the process management after 144.199528 seconds from start" > > Der andere Pool loggt normal über notice: > "child $bla exited with code 0 after 10841.346 seconds from start" > > Über die Statistic /status kann ich die aufgelaufenen Requests per > Pool/child sehen. > > Der process manager läuft als dynamic. dynamic würde ich nur im Ausnahmefall machen, wenn man völlig unsicher ist, wieviel Last auf dem Server anfällt. static ist oft deutlich stressfreier. Auch die Anzahl maximaler Requests pro Worker würde ich deutlich höher setzen, z.B. 5000 oder 10000. Das die Worker überhaupt beendet werden, ist ja nur eine Sicherheitsmaßnahme um negative Auswirkungen durch Memory Leaks zu vermeiden. Hier läuft eine WordPress-Website mit ca. 2000-5000 Visits pro Tag mit folgenden Einstellungen: pm = static pm.max_children = 10 pm.max_requests = 5000 Wobei ich pm.max_requests erstmal auf 0 (unbegrenzt) lassen würde und dann beobachten würde, ob eine Begrenzung überhaupt notwendig ist und ggf. mit Apache JMeter o.Ä. testen. -- Arno Welzel https://arnowelzel.de
[toc] | [prev] | [next] | [standalone]
| From | Tim Ritberg <tim@server.invalid> |
|---|---|
| Date | 2023-03-17 19:13 +0100 |
| Message-ID | <tv2ako$24prh$1@tota-refugium.de> |
| In reply to | #4905 |
Am 17.03.23 um 15:42 schrieb Arno Welzel: > Tim Ritberg, 2023-03-16 18:40: > >> Ich habe hier einen Server mit einigen kleinen Webpressseiten und PHP >> 7.4 als FPM laufen. > > PHP 7.4 ist end-of-life. Nicht für Debian! ;-) > > dynamic würde ich nur im Ausnahmefall machen, wenn man völlig unsicher > ist, wieviel Last auf dem Server anfällt. static ist oft deutlich > stressfreier. Auch die Anzahl maximaler Requests pro Worker würde ich > deutlich höher setzen, z.B. 5000 oder 10000. Das die Worker überhaupt > beendet werden, ist ja nur eine Sicherheitsmaßnahme um negative > Auswirkungen durch Memory Leaks zu vermeiden. Ich hatte die Worker schon höher, aber das bringt ja nichts, diese Zahl erreicht er nie. > Hier läuft eine WordPress-Website mit ca. 2000-5000 Visits pro Tag mit > folgenden Einstellungen: > > pm = static Probiere ich vielleicht mal aus. Wobei der andere Pool ja super mit dynamic läuft. Tim
[toc] | [prev] | [standalone]
Back to top | Article view | de.comp.lang.php
csiph-web