{"id":22078,"date":"2026-11-10T11:30:00","date_gmt":"2026-11-10T10:30:00","guid":{"rendered":"https:\/\/webhosting.de\/?p=22078"},"modified":"2026-11-05T08:25:52","modified_gmt":"2026-11-05T07:25:52","slug":"php-fpm-statuspagina-prestatieanalyse","status":"publish","type":"post","link":"https:\/\/webhosting.de\/nl\/php-fpm-status-page-performanceanalyse\/","title":{"rendered":"De PHP-FPM-statuspagina gebruiken voor prestatieanalyse"},"content":{"rendered":"<div class=\"wh-article\" data-wh-layout=\"2.1.2\" style=\"width:100%;max-width:820px;margin:0 auto;color:#263b4b;font-family:inherit;font-size:18px;line-height:1.8;text-align:start;overflow-wrap:break-word;box-sizing:border-box\"><p class=\"wh-lead\" style=\"font-size:20px;line-height:1.7;color:#233746;margin:0 0 1.1em\">De PHP-FPM-statuspagina geeft voor een bepaalde pool weer hoeveel workers actief zijn en of er verzoeken in de wachtrij staan. Voor een betrouwbare prestatieanalyse heb je echter meer nodig dan \u00e9\u00e9n enkele opvraging: vergelijk de waarden in de loop van de tijd en toets ze af tegen responstijden, logbestanden en het verbruik van systeembronnen. <strong style=\"font-weight:700;color:inherit\">Wachtrij en beschikbare werknemers<\/strong> helpen om een bottleneck te lokaliseren; ze geven op zichzelf echter geen inzicht in de oorzaak ervan. Stel de status \u2018beveiligde toegang\u2019 in en controleer of deze daadwerkelijk naar de pool van je toepassing leidt. <\/p>\n<nav class=\"wh-toc\" aria-label=\"Inhoud van dit artikel\" style=\"display:block;margin:28px 0 38px;padding:22px;border:1px solid #d9e4e8;border-radius:14px;background:#f4f8f8\"><p class=\"wh-toc-title\" style=\"font-size:13px;font-weight:700;letter-spacing:.08em;color:#49656b;margin:0 0 14px\">Direct naar de paragraaf<\/p><div class=\"wh-toc-grid\" style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:10px\"><div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#fpm-pool-grundlagen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Wat de statuspagina over de pool laat zien<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#prozessmanager-grenzen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Werknemers en procesmanagers begrijpen<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#status-sicherheit\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Status-toegang en FastCGI beveiligen<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#status-einrichten\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">De statuspagina beveiligd beschikbaar stellen<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#kennzahlen-lesen\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Kerncijfers correct interpreteren en berekenen<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#formate-full\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Uitvoerformaten en procesdetails vergelijken<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#lastspitzen-diagnose\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Wachtrijen en trage verzoeken onderzoeken<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#monitoring-ausfall\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Monitoring en storingen van de statuspagina<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#entscheidung-fehlersuche\" style=\"display:block;height:100%;padding:12px 15px;border:1px solid #dce6e8;border-radius:9px;background:#fff;color:#18575b;font-size:14px;line-height:1.5;font-weight:600;text-decoration:none;box-sizing:border-box\">Bevindingen beoordelen en maatregelen selecteren<\/a><\/div>\n<\/div><\/nav><section class=\"wh-section\" aria-labelledby=\"fpm-pool-grundlagen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"fpm-pool-grundlagen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Wat de statuspagina over de pool laat zien<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">De PHP-FPM-statuspagina laat zien hoe een bepaalde <strong style=\"font-weight:700;color:inherit\">zwembad<\/strong> Verwerkte PHP-verzoeken: onder andere hoeveel processen actief of vrij zijn en of er verzoeken in de wachtrij staan. Voorwaarde is dat de applicatie daadwerkelijk door PHP-FPM wordt bediend. De PHP-versie die via de opdrachtregel wordt weergegeven, geeft op zichzelf geen informatie over dit aspect, noch over de versie van de betreffende FPM-dienst. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Bepaal daarom eerst welke FPM-versie wordt gebruikt en naar welke pool de webserver de applicatie doorstuurt. Hierbij gaat het om de gebruikte Unix-socket of TCP-listener en de routing in de betreffende virtuele host. Deze toewijzing is belangrijk om te voorkomen dat bij een latere statusopvraging per ongeluk een andere pool wordt beschreven.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Als een server meerdere pools beheert, geldt de weergave telkens voor de opgevraagde pool en niet automatisch voor alle PHP-toepassingen. Bij shared hosting beschik je mogelijk niet over de benodigde rechten voor de configuratie van de pool of de webserver. In dat geval ben je afhankelijk van de provider om de statuspagina of vergelijkbare statistieken beveiligd beschikbaar te stellen. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Een opvraging is in de eerste plaats een <strong style=\"font-weight:700;color:inherit\">Momentopname<\/strong>: Tussen twee opvragingen kunnen korte wachtrijen ontstaan en weer verdwijnen. Andere waarden tellen gebeurtenissen sinds de start van FPM; bij een herstart worden ze gereset. Sla daarom, voor een duidelijk overzicht, de opvraagtijd en de pool-ID samen met de waarden op. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Deze pagina geeft geen volledig beeld van de wachttijd in de browser. Ook het netwerk, de webserver, de database en externe diensten kunnen van invloed zijn op de responstijd. Het is daarom een uitgangspunt voor het diagnosticeren van de PHP-FPM-pool, en geen volledige prestatietest van de website.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"prozessmanager-grenzen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"prozessmanager-grenzen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Werknemers en procesmanagers begrijpen<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">De procesmanager bepaalt hoe de pool zijn workers inzet. Bij <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">static<\/code> blijft het aantal ervan gelijk. <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">dynamic<\/code> past het aantal binnen de geconfigureerde grenzen aan de behoefte aan; <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">ondemand<\/code> start processen indien nodig. Welke vrije capaciteit je kunt verwachten, hangt dus ook af van de ingestelde bedrijfsmodus. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Een actief proces is momenteel bezig met het verwerken van een verzoek; een vrij proces staat klaar om aan de slag te gaan. Een groot aantal actieve workers is niet per se een fout: een drukbezette pool kan verzoeken snel afhandelen. De situatie wordt pas zorgwekkend als er tegelijkertijd verzoeken in de wachtrij staan, de responstijden toenemen en er nauwelijks vrije processen beschikbaar zijn. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Zelfs een tijdelijk lege reserve is op zich nog geen bewijs van een blijvend tekort. Vergelijk herhaalde opvragingen met de geconfigureerde <strong style=\"font-weight:700;color:inherit\">Proceslimiet<\/strong> en de momenten waarop gebruikers daadwerkelijk vertragingen opmerken. Zo kun je een korte piek in de belasting beter onderscheiden van een terugkerende overbelasting.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Meer workers kunnen meer verzoeken tegelijkertijd verwerken, maar hebben wel extra geheugen nodig en kunnen databases of externe diensten zwaarder belasten. Als veel processen wachten op dezelfde trage afhankelijkheid, lost een hogere limiet de oorzaak niet op. Controleer daarom de beschikbare middelen en de duur van de verzoeken voordat je <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">pm.max_children<\/code> veranderen. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Om de bevoegdheden binnen de hostingstack in kaart te brengen, helpt het om een vergelijking te maken tussen <a href=\"https:\/\/webhosting.de\/nl\/nginx-unit-als-alternatief-voor-php-fpm\/\">NGINX Unit en PHP-FPM<\/a>. Het vormt een aanvulling op het architectuurperspectief; de concrete statuswaarden en instellingen van de procesmanager moet je nog steeds controleren in de daadwerkelijk gebruikte FPM-pool.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"status-sicherheit\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"status-sicherheit\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Status-toegang en FastCGI beveiligen<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">De statusweergave kan gevoelige informatie over verzoeken en bronnen onthullen. Met name procesdetails kunnen verzoek-URI\u2019s bevatten die het mogelijk maken om conclusies te trekken over aangeroepen functies of verzonden parameters. Beschouw de pagina daarom als een diagnostische toegang en niet als een openbaar statusdashboard. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Beperk de <strong style=\"font-weight:700;color:inherit\">HTTP-toegang<\/strong> op interne verzoeken of expliciet bekende IP-adressen van clients. Controleer daarbij welk adres de webserver daadwerkelijk als client ziet wanneer er een proxy tussen zit. De beveiliging moet gelden voor de routing van de statuspagina en moet worden gecontroleerd voordat deze wordt vrijgegeven. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Zorg in ieder geval voor de <strong style=\"font-weight:700;color:inherit\">Toegang tot FastCGI<\/strong> zelf. Bij een Unix-socket zijn de eigenaar en de machtigingen van belang; bij TCP moeten de netwerkkoppeling en de toegestane clients worden gecontroleerd. Een blokkering op de webserver biedt geen bescherming voor een FastCGI-poort die afzonderlijk bereikbaar is vanuit een onbetrouwbaar netwerk. <\/p>\n<figure class=\"wp-block-image size-large wh-figure\" aria-describedby=\"wh-caption-detail1\" style=\"display:block;float:none;clear:both;width:100%;max-width:760px;margin:34px auto 40px;border:1px solid #dae5e9;border-radius:14px;overflow:hidden;background:#f5f8fa;box-shadow:0 10px 28px -17px rgba(24,47,60,.28);box-sizing:border-box\"><div class=\"wh-figure-media\" style=\"display:block;background:#eef3f5;line-height:0\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/fastcgi-tcp-netzwerkzugang-ea7b43a4-detail1-b40d3e84c0-1024x683.webp\" class=\"wp-image-22090\" alt=\"Door AI gegenereerde illustratie van een ethernetkabel aangesloten op een kleine computer, als aanwijzing voor een mogelijke TCP-toegang.\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/fastcgi-tcp-netzwerkzugang-ea7b43a4-detail1-b40d3e84c0-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/fastcgi-tcp-netzwerkzugang-ea7b43a4-detail1-b40d3e84c0-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/fastcgi-tcp-netzwerkzugang-ea7b43a4-detail1-b40d3e84c0-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/fastcgi-tcp-netzwerkzugang-ea7b43a4-detail1-b40d3e84c0-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/fastcgi-tcp-netzwerkzugang-ea7b43a4-detail1-b40d3e84c0.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" ><\/div><figcaption class=\"wh-caption\" id=\"wh-caption-detail1\" style=\"display:block;margin:0;padding:12px 18px 15px;border-top:1px solid #dce5e9;color:#506575;background:#f5f8fa;font-size:14px;line-height:1.55;text-align:start\">Door AI gegenereerde illustratie: Een FastCGI-toegang via TCP moet onafhankelijk van de HTTP-toegang worden beveiligd.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Het PHP-project documenteert met CVE-2026-6735 een XSS-kwetsbaarheid in de FPM-statusuitvoer. Gecorrigeerde versies zijn onder meer PHP 8.4.21 en 8.5.6. Controleer voor andere versietakken en distributiepakketten de betreffende beveiligingsstatus of teruggeporteerde patches, in plaats van alleen op basis van het weergegeven versienummer te concluderen dat er bescherming is. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Een update vervangt de toegangsbeperking niet: zelfs een gecorrigeerde statuspagina kan nog steeds bedrijfsgegevens prijsgeven. Beperk zowel de HTTP-toegang als de listener tot de beoogde gebruikersgroep en houd rekening met deze twee beveiligingslagen bij latere wijzigingen in de routing.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"status-einrichten\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"status-einrichten\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">De statuspagina beveiligd beschikbaar stellen<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Bepaal eerst welke FPM-pool de betreffende applicatie verwerkt en via welke socket of welk TCP-adres de webserver deze bereikt. Bij meerdere pools hoort de statusaanvraag bij de pool waarnaar deze wordt doorgestuurd. De PHP-versie van de opdrachtregel geeft op zichzelf niet aan welke FPM-dienst verantwoordelijk is voor de toepassing. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">In het configuratiebestand van de betreffende pool activeert het volgende fragment de <strong style=\"font-weight:700;color:inherit\">Statuspad<\/strong>. Het is geen PHP-bestand dat je in de documentmap moet aanmaken. Het fragment is een configuratievoorstel en veronderstelt dat je de poolconfiguratie mag bewerken. <\/p>\n<div class=\"wh-code-window\" data-wh-code style=\"margin:28px 0 34px;border:1px solid #2c4656;border-radius:12px;overflow:hidden;background:#132a3b;box-shadow:0 9px 25px -13px rgba(15,35,55,.2)\"><div class=\"wh-code-toolbar\" style=\"display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;background:#223e50;color:#edf5fa;font-size:13px;line-height:1.5;font-weight:600\"><span>Code<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy hidden style=\"padding:6px 11px;border:1px solid #7893a1;border-radius:6px;background:transparent;color:#fff;font-size:12px;line-height:1.5;font-weight:600;cursor:pointer\">Code kopi\u00ebren<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Gekopieerd<\/span><span data-wh-copy-fallback hidden>Code gemarkeerd \u2013 gelieve te kopi\u00ebren<\/span><\/div><pre class=\"wh-code\" data-no-translation translate=\"no\" style=\"display:block;margin:0;padding:20px;max-width:100%;overflow-x:auto;color:#edf5fa;background:#132a3b;font:14px\/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;direction:ltr;text-align:left\"><code class=\"language-ini\" style=\"font:inherit;color:inherit;background:transparent;padding:0;border:0;white-space:inherit\">pm.status_path = \/fpm-status<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Stel op de webserver een geschikte route in die verzoeken naar dit pad rechtstreeks via FastCGI doorstuurt naar de vastgestelde pool. De gebruikelijke applicatierouting mag het verzoek niet onderscheppen. Beperk de HTTP-toegang tot interne verzoeken of bekende IP-adressen van clients en beveilig de FastCGI-socket onafhankelijk daarvan via machtigingen of netwerkbinding en toegestane clients.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Controleer v\u00f3\u00f3r de offici\u00eble uitrol zowel de webserver- als de FPM-configuratie met behulp van de in jouw omgeving vastgestelde testprocedures. Zorg ervoor dat je de juiste service en pool wijzigt en dat de toegangsbeperking ook geldt voor het statuspad. Het louter instellen van een pad maakt de uitvoer nog niet bereikbaar via HTTP.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Voor een reeds ingestelde, lokaal beveiligde omgeving leest de volgende terminalopdracht de JSON-uitvoer. Hiervoor is vereist dat er op het opgegeven adres een geschikte lokale HTTP-virtual-host bereikbaar is. Anders moet je het adres en de host-routing, en indien nodig ook TLS, aanpassen aan je omgeving; het ophalen van de gegevens heeft geen invloed op de configuratie.<\/p>\n<div class=\"wh-code-window\" data-wh-code style=\"margin:28px 0 34px;border:1px solid #2c4656;border-radius:12px;overflow:hidden;background:#132a3b;box-shadow:0 9px 25px -13px rgba(15,35,55,.2)\"><div class=\"wh-code-toolbar\" style=\"display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:11px 16px;background:#223e50;color:#edf5fa;font-size:13px;line-height:1.5;font-weight:600\"><span>Terminal<\/span><button type=\"button\" class=\"wh-code-copy\" data-wh-copy hidden style=\"padding:6px 11px;border:1px solid #7893a1;border-radius:6px;background:transparent;color:#fff;font-size:12px;line-height:1.5;font-weight:600;cursor:pointer\">Code kopi\u00ebren<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Gekopieerd<\/span><span data-wh-copy-fallback hidden>Code gemarkeerd \u2013 gelieve te kopi\u00ebren<\/span><\/div><pre class=\"wh-code\" data-no-translation translate=\"no\" style=\"display:block;margin:0;padding:20px;max-width:100%;overflow-x:auto;color:#edf5fa;background:#132a3b;font:14px\/1.75 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;direction:ltr;text-align:left\"><code class=\"language-bash\" style=\"font:inherit;color:inherit;background:transparent;padding:0;border:0;white-space:inherit\">curl --fail --silent --show-error &#039;http:\/\/127.0.0.1\/fpm-status?json&#039;<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Controleer in het antwoord met name de naam van de pool. Een foutmelding of onverwachte uitvoer van de toepassing kan wijzen op een onjuiste routing; ook een toegangsbeperking kan het ophalen verhinderen. Controleer vervolgens de betreffende webserverconfiguratie en de logbestanden, in plaats van de beveiliging overhaast op te heffen.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"kennzahlen-lesen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"kennzahlen-lesen\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Kerncijfers correct interpreteren en berekenen<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">De statuswaarden hebben betrekking op verschillende tijdsperioden: sommige geven de toestand weer op het moment van opvragen, andere tellen gebeurtenissen of registreren een maximumwaarde sinds de start. Voor een diagnose is dit onderscheid belangrijker dan een enkele opvallende waarde. In de volgende tabel worden de belangrijkste gegevens weergegeven. <\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"PHP-FPM-statistieken en veelvoorkomende misinterpretaties\" style=\"width:100%;max-width:100%;overflow-x:auto;margin:28px 0;border:1px solid #dce5e9;border-radius:14px;background:#fff;box-shadow:0 10px 28px -16px rgba(24,47,60,.32);box-sizing:border-box\"><table style=\"width:100%;min-width:580px;border-collapse:separate;border-spacing:0;border:0;margin:0;font-size:15px;line-height:1.6;background:#fff\"><caption style=\"padding:20px;text-align:start;font-size:17px;line-height:1.5;font-weight:700;color:#173246;background:#fff\">PHP-FPM-statistieken en veelvoorkomende misinterpretaties<\/caption><thead><tr><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Sleutelfiguur<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Dat betekent<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Vriendelijk<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Niet verwarren met<\/th><\/tr><\/thead><tbody><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">actieve processen \/ inactieve processen<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Lopende of beschikbare processen<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Momentopname<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Het feit dat er veel actieve processen zijn, betekent op zich nog niet dat er sprake is van een bottleneck.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">luisterwachtrij<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Aanvragen die momenteel in behandeling zijn<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Momentopname<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Een eerder record zegt niets over de huidige rij.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">max luisterwachtrij<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Langste wachtrij sinds de start<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Maximale waarde<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Aanvragen hoeven niet langer te wachten.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">lijst wachtrij lengte<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Capaciteit van de wachtrij<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Configuratiegerelateerde limiet<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">De capaciteit is niet het huidige aantal wachtende verzoeken.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">geaccepteerde verbinding<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Goedgekeurde verbindingen<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Cumulatieve teller<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Deze waarde geeft niet het aantal externe paginaweergaven weer.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">max. bereikte kinderen<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Gebeurtenissen bij het bereiken van de procesgrens<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Cumulatieve teller<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Een waarde van nul is bij `static` geen garantie dat er geen probleem is.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">langzame aanvragen<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Verzoeken die de geconfigureerde slowlog-drempel hebben bereikt<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Cumulatieve teller<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Nul betekent niet dat alle verzoeken snel waren.<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Voor een <strong style=\"font-weight:700;color:inherit\">verbindingssnelheid<\/strong>trek je twee waarden af van <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">accepted conn<\/code> van elkaar af en deel het verschil door de verstreken tijd. Hypothetisch rekenvoorbeeld, geen meting: als de teller binnen 60 seconden stijgt van 12.000 naar 12.600, komt dat neer op gemiddeld tien veronderstelde verbindingen per seconde. Hieruit kunnen noch paginaweergaven, noch applicatielatentie direct worden afgeleid.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Sla bij elk meetpunt de tijd en de pool-identiteit op. Na een herstart van de FPM worden de statuswaarden gereset; een verschil over deze onderbreking heen is daarom geen geldige waarde. Detecteer een gedaalde teller of een gewijzigd starttijdstip en begin de berekening voor de nieuwe periode opnieuw. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Op <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">max children reached<\/code> is de procesmanager van cruciaal belang: de voorbeeldconfiguratie van PHP 8.4.21 beschrijft de teller voor \u2018dynamic\u2019 en \u2018ondemand\u2019. Bij \u2018static\u2019 mag je een waarde van nul niet beschouwen als bewijs van vrije capaciteit. Voor <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">slow requests<\/code> De drempel en de slowlog moeten correct zijn ingesteld; de drempel bepaalt welke lange verzoeken \u00fcberhaupt worden geregistreerd.  <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"formate-full\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"formate-full\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Uitvoerformaten en procesdetails vergelijken<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">De korte versie is geschikt om een overzicht te krijgen van de gehele pool. Bij de keuze van het formaat is het van belang of je de waarden handmatig wilt aflezen of regelmatig via een monitoringsysteem wilt verwerken. De parameter <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">full<\/code> voegt procesdetails toe aan de uitvoer; het is geen op zichzelf staand uitwisselingsformaat. <\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"Vergelijking van statusformaten en gedetailleerde weergave\" style=\"width:100%;max-width:100%;overflow-x:auto;margin:28px 0;border:1px solid #dce5e9;border-radius:14px;background:#fff;box-shadow:0 10px 28px -16px rgba(24,47,60,.32);box-sizing:border-box\"><table style=\"width:100%;min-width:580px;border-collapse:separate;border-spacing:0;border:0;margin:0;font-size:15px;line-height:1.6;background:#fff\"><caption style=\"padding:20px;text-align:start;font-size:17px;line-height:1.5;font-weight:700;color:#173246;background:#fff\">Vergelijking van statusformaten en gedetailleerde weergave<\/caption><thead><tr><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Uitgave<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Beoogd gebruik<\/th><th scope=\"col\" style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#19394d;color:#fff\">Grens of voorwaarde<\/th><\/tr><\/thead><tbody><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Tekst<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Snelle handmatige controle van de poolwaarden<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Leg voor vergelijkingen in de tijd het aantal opvragingen en de tijdstippen vast.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">JSON<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Gestructureerde, geautomatiseerde analyse<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Beveilig de toegang en controleer het formaat met de monitoringclient.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">OpenMetrics<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Integratie in compatibele monitoring<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#fff;color:#294252\">Vanaf PHP 8.1; controleer de daadwerkelijke uitvoer en de compatibiliteit met de client.<\/td><\/tr><tr><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">volledig<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Aanvullende informatie over afzonderlijke processen<\/td><td style=\"padding:15px 18px;border:0;border-bottom:1px solid #e2e9ed;text-align:start;vertical-align:top;white-space:normal;font-size:15px;line-height:1.6;background:#f4f7f9;color:#294252\">Ga er bij OpenMetrics niet zomaar vanuit dat er gegevens van afzonderlijke processen beschikbaar zijn zonder eerst de ge\u00efnstalleerde versie te controleren.<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">De PHP-handleiding bevat bovendien documentatie over XML en HTML. Controleer bij geautomatiseerde opvragingen de daadwerkelijk ge\u00efnstalleerde FPM-versie en de uitvoer daarvan, voordat je vertrouwt op bepaalde velden of procesdetails. Let met name op de combinatie van OpenMetrics en <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">full<\/code> dit in de eigen versie controleren, in plaats van zomaar uit te gaan van gegevens over afzonderlijke processen. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">De <strong style=\"font-weight:700;color:inherit\">Duur van de aanvraag<\/strong> In de Full-uitgave wordt deze waarde in microseconden weergegeven. Bij een actief proces geeft deze de duur aan van het verzoek dat op dat moment wordt verwerkt; bij een inactief proces heeft deze betrekking op het laatst verwerkte verzoek. Een hoge waarde bij een vrije worker betekent daarom niet dat deze op dat moment nog bezig is met het verzoek. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">De velden <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">last request cpu<\/code> en <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">last request memory<\/code> worden bij actieve processen als nul weergegeven, omdat ze pas na voltooiing van de aanvraag worden ge\u00ebvalueerd. Deze nulwaarden duiden dus niet op een gebrek aan CPU- of geheugengebruik. Herhaalde controles kunnen aantonen of een proces langer actief blijft; ze zijn echter geen vervanging voor een volledige applicatietracing.  <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"lastspitzen-diagnose\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"lastspitzen-diagnose\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Wachtrijen en trage verzoeken onderzoeken<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Als de <strong style=\"font-weight:700;color:inherit\">wachtrij<\/strong> Als dit herhaaldelijk gebeurt terwijl er veel actieve processen zijn en er maar weinig vrij zijn, is een overbelaste pool een aannemelijke werkhypothese. E\u00e9n enkele controle is hiervoor niet voldoende: vergelijk meerdere tijdstippen en let erop of de responstijden voor verzoeken tegelijkertijd toenemen. De maximale waarde van de wachtrij alleen zegt nog niet of er op dat moment nog verzoeken in de wachtrij staan. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Vergelijk deze periode met FPM-logs, CPU-belasting en beschikbaar geheugen. Houd ook rekening met de database, cache en externe diensten: als PHP wacht op een trage afhankelijkheid, blijven workers bezig, hoewel extra CPU-vermogen op zich het probleem niet per se hoeft op te lossen. De statuspagina toont het gebruik, maar geeft niet altijd een betrouwbare indicatie van de oorzaak.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Roep de beveiligde volledige uitvoer herhaaldelijk op tijdens een opvallende fase. Een lange verzoekduur bij hetzelfde actieve proces kan wijzen op een worker die al langere tijd bezig is; controleer daarbij de processtatus, want bij een inactief proces heeft de duur betrekking op het laatste verzoek van dat proces. PID, URI en script helpen bij de toewijzing, maar leveren geen volledige trace op. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Juist bij een front-controller kan dezelfde scriptnaam veel verschillende toepassingsfuncties omvatten. Vul deze observatie daarom aan met applicatietracing en een passend geconfigureerde <strong style=\"font-weight:700;color:inherit\">Slowlog<\/strong>. De drempelwaarde daarvan bepaalt welke lange verzoeken worden geregistreerd; het ontbreken van een vermelding betekent niet dat alle verzoeken snel waren. Hoe je de uitkomsten nader kunt interpreteren, wordt uitgelegd in het artikel over de <a href=\"https:\/\/webhosting.de\/nl\/php-fpm-slowlog-correct-analyseren-prestatieoptimalisatie-foutopsporing-analyse\/\">Het PHP-FPM-slowlog analyseren<\/a>. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Noteer voor de vergelijking het tijdvenster en de betreffende pool. Zo kun je bijvoorbeeld controleren of een trage databasequery qua tijd overeenkomt met de bezette workers, of dat de wachtrij al eerder aan het groeien was. Een correlatie beperkt de zoekopdracht, maar vervangt nog niet de controle van het concrete verzoek.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"monitoring-ausfall\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"monitoring-ausfall\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Monitoring en storingen van de statuspagina<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Voor terugkerende piekbelastingen zijn regelmatige, beveiligde opvragingen zinvoller dan incidentele afzonderlijke controles. JSON is geschikt voor geautomatiseerde verwerking; OpenMetrics is een alternatief als de ge\u00efnstalleerde PHP-versie en de monitoringclient compatibel zijn. Sla voor elk meetpunt het tijdstip en de identiteit van de pool op, zodat je niet per ongeluk verschillende pools met elkaar vergelijkt. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Behandel <strong style=\"font-weight:700;color:inherit\">ontbrekende opvragingen<\/strong> als afzonderlijke gebeurtenissen en niet als nulwaarden. Een leemte kan te wijten zijn aan het netwerk, de toegangsbeveiliging of de statusdienst; deze duidt op zichzelf noch op een lege pool, noch op een applicatiestoring. Sla daarom ook fouten en time-outs bij het ophalen op, zodat de leemte bij de latere analyse zichtbaar blijft.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Houd bovendien rekening met het terugzetten van gecumuleerde tellers na een FPM-herstart. Een negatief verschil tussen twee waarden betekent niet dat de verbindingssnelheid negatief is; begin de berekening na het resetten opnieuw en houd rekening met het onderbroken interval. Ook de starttijd en de pooltoewijzing helpen om een dergelijke onderbreking in het verloop te duiden. <\/p>\n<figure class=\"wp-block-image size-large wh-figure\" aria-describedby=\"wh-caption-detail2\" style=\"display:block;float:none;clear:both;width:100%;max-width:760px;margin:34px auto 40px;border:1px solid #dae5e9;border-radius:14px;overflow:hidden;background:#f5f8fa;box-shadow:0 10px 28px -17px rgba(24,47,60,.28);box-sizing:border-box\"><div class=\"wh-figure-media\" style=\"display:block;background:#eef3f5;line-height:0\"><img loading=\"lazy\" width=\"800\" height=\"534\" src=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-monitoring-luecke-neustart-ea7b43a4-detail2-a8ab4ad461-1024x683.webp\" class=\"wp-image-22091\" alt=\"Door AI gegenereerde illustratie van een reeks meetpunten voor monitoring met een gat en een onderbreking.\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-monitoring-luecke-neustart-ea7b43a4-detail2-a8ab4ad461-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-monitoring-luecke-neustart-ea7b43a4-detail2-a8ab4ad461-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-monitoring-luecke-neustart-ea7b43a4-detail2-a8ab4ad461-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-monitoring-luecke-neustart-ea7b43a4-detail2-a8ab4ad461-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-monitoring-luecke-neustart-ea7b43a4-detail2-a8ab4ad461.webp 1536w\" sizes=\"auto, (max-width: 800px) 100vw, 800px\" ><\/div><figcaption class=\"wh-caption\" id=\"wh-caption-detail2\" style=\"display:block;margin:0;padding:12px 18px 15px;border-top:1px solid #dce5e9;color:#506575;background:#f5f8fa;font-size:14px;line-height:1.55;text-align:start\">Door AI gegenereerde illustratie: Ontbrekende opvragingen en herstarts moeten in de monitoring als onderbrekingen herkenbaar blijven.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Als de statusopvraging via dezelfde pool verloopt als de applicatie, kan deze zelf wachten wanneer de workers vol zijn. Voor deze situatie biedt <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">pm.status_listen<\/code> een aparte FastCGI-listener met een onafhankelijk werkende interne pool. Deze kan statusdiagnose mogelijk maken terwijl de hoofdpool bezet is; hij vergroot echter niet de verwerkingscapaciteit daarvan. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">De extra listener heeft een expliciet toegewezen, beveiligde webserver-routing nodig. Beveilig ook de FastCGI-toegang en controleer na een goedgekeurde wijziging of de opvraging daadwerkelijk de gewenste poolstatus oplevert. Zo blijft de diagnose gescheiden van het normale applicatiepad, zonder dat de statusgegevens openbaar toegankelijk worden gemaakt. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"entscheidung-fehlersuche\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"entscheidung-fehlersuche\" style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Bevindingen beoordelen en maatregelen selecteren<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Een FPM-ping en de statuspagina geven antwoord op verschillende vragen. De ping laat zien of FPM op het betreffende verzoek reageert; hij geeft geen vergelijkbare informatie over beschikbare workers of wachtende verzoeken. Een succesvolle ping alleen is daarom geen reden om ongerustheid over de belasting van de applicatiepool weg te nemen. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Als procescijfers niet overeenkomen met logbestanden of andere waarnemingen, controleer dan eerst de pooltoewijzing, het tijdstip van opvraging en of een herstart nodig is. Vergelijk vervolgens de waarden met andere beschikbare proces- en bedrijfsgegevens. Beschouw de afwijking in eerste instantie als een openstaande bevinding, in plaats van er direct een oorzaak of een noodzakelijke configuratiewijziging uit af te leiden.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Als herhaalde \u2018Full\u2019-opvragingen en slowlog-vermeldingen dezelfde lange verzoekpatronen vertonen, onderzoek dan eerst de betreffende applicatiepaden. Als de vertraging daarentegen bij een database of een externe dienst ligt, kan de analyse daarvan meer effect hebben dan een aanpassing van het aantal workers. Het is van cruciaal belang dat de maatregel de waargenomen oorzaak aanpakt, en niet alleen een afzonderlijk symptoom.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Een aanpassing van <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">pm.max_children<\/code> Dit is een optie als aantoonbaar is dat de pool op zijn limiet draait en de CPU, het geheugen en de daarachter liggende diensten extra parallelliteit aankunnen. Meer workers hebben meer resources nodig en kunnen de druk op deze diensten verhogen. Er is daarom geen algemeen geldend aantal; de werkwijze van de procesmanager moet bij de afweging worden meegenomen. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Vergelijk na het doorvoeren van een wijziging dezelfde pool opnieuw onder zo vergelijkbaar mogelijke belastingomstandigheden: wachtrij, responstijden, fouten en resourceverbruik horen bij elkaar. Noteer ook wanneer een maatregel geen verbetering oplevert of een afhankelijkheid zwaarder belast. Pas dan <strong style=\"font-weight:700;color:inherit\">Voor-en-na-vergelijking<\/strong> maakt een weloverwogen beslissing over de verdere aanpak mogelijk.<\/p>\n<\/section><section class=\"wh-sources\" style=\"margin:40px 0 0;padding:24px 0 0;border-top:1px solid #dce5e9;color:#596b7b;font-size:14px;line-height:1.65\"><h2 style=\"margin:38px 0 18px;color:#172f41;font-size:clamp(24px,1.25rem + 1vw,30px);font-weight:700;line-height:1.3;scroll-margin-top:115px\">Bronnen en stand van zaken op vakgebied<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Stand van het onderzoek: <time datetime=\"2026-11-04\">2026-11-04<\/time><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Stand van zaken: 4 november 2026. Volgens de PHP-handleiding is OpenMetrics beschikbaar vanaf PHP 8.1; controleer de specifieke versie en de beveiligingsstatus van de gebruikte FPM-versie.<\/p><div class=\"wh-source-urls\"><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/www.php.net\/manual\/en\/fpm.status.php<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/www.php.net\/manual\/de\/install.fpm.configuration.php<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/www.php.net\/install.fpm.configuration<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/github.com\/php\/php-src\/security\/advisories\/GHSA-7qg2-v9fj-4mwv<\/span><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\"><span class=\"wh-source-url\" data-no-translation dir=\"ltr\" style=\"overflow-wrap:anywhere;font:12px\/1.6 ui-monospace,monospace;direction:ltr\">https:\/\/github.com\/php\/php-src\/blob\/php-8.4.21\/sapi\/fpm\/www.conf.in<\/span><\/p><\/div><\/section><\/div>","protected":false},"excerpt":{"rendered":"<p>De PHP-FPM-statuspagina toont de belasting en wachtrijen van een pool. Zo stel je beveiligde toegang in en configureer je kengetallen voor een betrouwbare diagnose.<\/p>","protected":false},"author":1,"featured_media":22089,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[780],"tags":[],"class_list":["post-22078","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administration-anleitungen"],"acf":[],"_links":{"self":[{"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/posts\/22078","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/comments?post=22078"}],"version-history":[{"count":3,"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/posts\/22078\/revisions"}],"predecessor-version":[{"id":22092,"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/posts\/22078\/revisions\/22092"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/media\/22089"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/media?parent=22078"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/categories?post=22078"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/nl\/wp-json\/wp\/v2\/tags?post=22078"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}