{"id":22208,"date":"2026-11-07T15:00:00","date_gmt":"2026-11-07T14:00:00","guid":{"rendered":"https:\/\/webhosting.de\/?p=22208"},"modified":"2026-11-05T07:23:24","modified_gmt":"2026-11-05T06:23:24","slug":"server-cpu-benchmark-php-webhosting","status":"publish","type":"post","link":"https:\/\/webhosting.de\/da\/server-cpu-benchmark-php-webhosting\/","title":{"rendered":"Server-CPU-benchmarking for PHP: Test af reelle webhosting-arbejdsbelastninger"},"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\">En enkelt CPU-score er ikke nok til at vurdere en servers ydeevne i forhold til PHP. Kombiner en reproducerbar <strong style=\"font-weight:700;color:inherit\">PHP-mikrobenchmark<\/strong> med en HTTP-test af din applikation: P\u00e5 den m\u00e5de kan du sammenligne en konkret beregningsopgave og samtidig overv\u00e5ge svartider, effektiv gennemstr\u00f8mning og fejl under belastning. En webhosting-benchmark tager ogs\u00e5 h\u00f8jde for databasen, cachen og PHP-FPM. Dens procespool kan begr\u00e6nse antallet af foresp\u00f8rgsler, uden at CPU\u2019en alene udg\u00f8r flaskehalsen. Det er afg\u00f8rende, at forholdene er sammenlignelige, og at der efterf\u00f8lgende foretages en diagnose.  <\/p>\n<nav class=\"wh-toc\" aria-label=\"Indholdet af denne 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\">G\u00e5 direkte til afsnittet<\/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=\"#messziele\" 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\">Hvad en PHP-benchmark skal give svar p\u00e5<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#testarten\" 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\">At skelne mellem CPU-resultater og programtests<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#vergleichsrahmen\" 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\">Fastl\u00e6gge sammenlignelige testbetingelser<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#testmatrix\" 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\">V\u00e6lg passende arbejdsbelastninger og m\u00e5leparametre<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#praxisablauf\" 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\">Udf\u00f8r en staging-test med wrk<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#messprotokoll\" 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\">Dokumentere belastningsniveauer og resultater<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#engpassanalyse\" 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\">Unders\u00f8gelse af FPM og ressourcebegr\u00e6nsninger<\/a><\/div>\n<div class=\"wh-toc-item\" style=\"display:block;min-width:0;margin:0;padding:0\"><a class=\"wh-toc-link\" href=\"#streuung\" 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\">At opdage spredning og fejlm\u00e5linger<\/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\" 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\">Brug resultaterne til at v\u00e6lge hosting<\/a><\/div>\n<\/div><\/nav><section class=\"wh-section\" aria-labelledby=\"messziele\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"messziele\" 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\">Hvad en PHP-benchmark skal give svar p\u00e5<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En PHP-CPU-benchmark kan f\u00f8rst og fremmest vise, hvor lang tid et system bruger p\u00e5 en bestemt beregningsopgave. Det er is\u00e6r nyttigt, n\u00e5r en enkelt foresp\u00f8rgsel bruger meget tid p\u00e5 PHP-beregninger. En h\u00f8jere <strong style=\"font-weight:700;color:inherit\">Ydeevne med \u00e9n kerne<\/strong> kan forkorte behandlingstiden for s\u00e5danne opgaver; man kan dog ikke ud fra en enkelt CPU-v\u00e6rdi udlede responstiden for et helt websted.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Et andet sp\u00f8rgsm\u00e5l vedr\u00f8rer applikationens adf\u00e6rd ved samtidige adgangsforesp\u00f8rgsler: Hvor mange korrekte svar leverer den pr. sekund, og hvor l\u00e6nge skal brugerne vente? Til dette form\u00e5l er der en <strong style=\"font-weight:700;color:inherit\">Webhosting-sammenligning<\/strong> via HTTP giver god mening. Den registrerer forl\u00f8bet gennem webserveren og PHP samt eventuelt databasen, cachen og netv\u00e6rket. Netop denne kombination g\u00f8r den praksisorienteret, men forhindrer en isoleret vurdering af CPU\u2019en.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Det tredje sp\u00f8rgsm\u00e5l drejer sig om flaskehalsen. Hvis en foresp\u00f8rgsel f.eks. afventer en databaseforesp\u00f8rgsel, siger en hurtigere beregning ikke meget om dens samlede varighed. Ogs\u00e5 en cache p\u00e5virker resultatet: Hvis en side allerede er leveret fuldt ud, f\u00f8r PHP tr\u00e6der i kraft, m\u00e5ler opkaldet ikke udf\u00f8relsen af den dynamiske applikation.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ved parallel belastning kan PHP-FPM-puljen desuden begr\u00e6nse, hvor mange anmodninger der behandles samtidigt. Dens statusside giver blandt andet oplysninger om optagede processer og ventende anmodninger. En voksende k\u00f8 er derfor en anledning til at foretage en diagnose, ikke et direkte bevis p\u00e5, at CPU\u2019en er for langsom.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">N\u00e5r man skal v\u00e6lge en hostingudbyder, er det en hj\u00e6lp at betragte disse sp\u00f8rgsm\u00e5l hver for sig: f\u00f8rst den sammenlignelige arbejdsenhed, derefter anvendelsen ved lav og h\u00f8j belastning og til sidst de ressourcer, der begr\u00e6nser resultatet. Hvordan CPU, RAM og lagerplads generelt spiller sammen, forklares i artiklen om <a href=\"https:\/\/webhosting.de\/da\/high-performance-webhosting-hardware-cpu-nvme-memory-performance-turbo-server\/\">Hardware til h\u00f8jtydende webhosting<\/a>.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"testarten\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"testarten\" 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\">At skelne mellem CPU-resultater og programtests<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En <strong style=\"font-weight:700;color:inherit\">Mikrobenchmark<\/strong> gentager en lille, pr\u00e6cist defineret opgave. Med PHPBench kan man for eksempel unders\u00f8ge en funktion til databehandling under fastlagte betingelser. Resultatet er nyttigt til at sammenligne denne funktion og dens k\u00f8rselsmilj\u00f8; det beskriver hverken automatisk en komplet foresp\u00f8rgsel eller ydeevnen for et CMS eller en webshop. <\/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\/php-mikrobenchmark-serverprozessor-11b350b5-detail1-da3b45bcb4-1024x683.webp\" class=\"wp-image-22212\" alt=\"Et AI-genereret symbolbillede af en udbygget serverprocessor p\u00e5 en antistatisk underlag\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-mikrobenchmark-serverprozessor-11b350b5-detail1-da3b45bcb4-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-mikrobenchmark-serverprozessor-11b350b5-detail1-da3b45bcb4-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-mikrobenchmark-serverprozessor-11b350b5-detail1-da3b45bcb4-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-mikrobenchmark-serverprozessor-11b350b5-detail1-da3b45bcb4-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-mikrobenchmark-serverprozessor-11b350b5-detail1-da3b45bcb4.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\">AI-genereret illustrativt billede: En mikrobenchmark unders\u00f8ger en opgave p\u00e5 det testede system, ikke hele webstakken.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En HTTP-applikationstest besvarer et andet sp\u00f8rgsm\u00e5l: Hvordan reagerer den valgte applikation via den faktisk anvendte webstack? Den tager for eksempel h\u00f8jde for PHP-FPM, databasen og cacher, i det omfang de indg\u00e5r i det testede opkald. Den er er derfor velegnet til at vurdere et hostingtilbud, men kan ikke alene p\u00e5vise, hvilken komponent der er \u00e5rsag til en forskel.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">SPEC CPU supplerer s\u00e5danne tests med standardiserede, beregningsintensive arbejdsbelastninger. SPEC CPU 2026 indeholder integer- og floating-point-suiter samt resultater for hastighed og gennemstr\u00f8mning. Hastighed henviser til den tid, det tager at udf\u00f8re opgaverne, mens gennemstr\u00f8mning henviser til den samlede m\u00e6ngde data, der behandles. En hastighedsv\u00e6rdi er ikke n\u00f8dvendigvis en ren single-core-v\u00e6rdi: SPEC p\u00e5peger yderligere parallelitet i heltal-hastighedstestene i 2026-suiten.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">For at kunne foretage en p\u00e5lidelig SPEC-sammenligning skal testsuiten, m\u00e5leparameteren og resultattypen <strong style=\"font-weight:700;color:inherit\">base eller peak<\/strong> stemmer overens. Det fuldt testede system er ligeledes afg\u00f8rende: Ud over processoren har blandt andet hukommelse, kompilator og konfiguration indflydelse p\u00e5 resultatet. Offentliggjorte v\u00e6rdier er derfor ikke en isoleret egenskab ved CPU-modellen og kan ikke erstatte en PHP-test.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">SPEC CPU 2017 og CPU 2026 anvender forskellige testsuiter; deres tal kan ikke sammenlignes p\u00e5 samme skala. Hvis man foretager en forudg\u00e5ende udv\u00e6lgelse, b\u00f8r man derfor sammenligne den fulde resultatrapport i stedet for en forkortet rangliste. Om en kandidat er egnet til ens egen anvendelse, viser f\u00f8rst en passende udf\u00f8rt anvendelsestest.  <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"vergleichsrahmen\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"vergleichsrahmen\" 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\">Fastl\u00e6gge sammenlignelige testbetingelser<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En retf\u00e6rdig sammenligning starter med den samme applikationsversion og et sammenligneligt datas\u00e6t. Ogs\u00e5 den valgte rute og det forventede svar skal stemme overens: En produktside med mange databaseadgange besvarer et andet sp\u00f8rgsm\u00e5l end en simpel API-funktion. Kontroller derfor ikke kun, om der kommer et svar, men ogs\u00e5 om indholdet passer til den p\u00e5t\u00e6nkte opgave.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Not\u00e9r b\u00e5de PHP-versionen og udvidelserne samt webserveren, PHP-FPM-konfigurationen og databasen. Netv\u00e6rksstien mellem belastningsgeneratoren og applikationen skal ogs\u00e5 medtages i protokollen. Forskellige stier eller databaseplaceringer kan p\u00e5virke den m\u00e5lte responstid, selvom PHP-udf\u00f8relsen ville v\u00e6re lige s\u00e5 hurtig p\u00e5 begge systemer.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Det er s\u00e6rligt vigtigt at skelne mellem <strong style=\"font-weight:700;color:inherit\">CLI og PHP-FPM<\/strong>: En test fra kommandolinjen unders\u00f8ger ikke automatisk den samme k\u00f8rselskonfiguration som en HTTP-anmodning. Dokumenter de faktisk anvendte OPcache- og JIT-indstillinger for begge sammenh\u00e6nge. Deres virkning og standardindstillinger afh\u00e6nger blandt andet af PHP-versionen; en generel antagelse er ikke tilstr\u00e6kkelig til sammenligningen.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Den <strong style=\"font-weight:700;color:inherit\">Cache-tilstand<\/strong> skal v\u00e6re sammenlignelig. En kold cache og en cache, der allerede er opvarmet, giver svar p\u00e5 forskellige sp\u00f8rgsm\u00e5l; begge kan v\u00e6re relevante, men b\u00f8r analyseres hver for sig. Det samme g\u00e6lder datam\u00e6ngde og testdata: Hvis arbejdsomfanget \u00e6ndrer sig, kan en tidsforskel ikke l\u00e6ngere entydigt tilskrives systemet.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Not\u00e9r desuden CPU-modellen, de tildelte vCPU\u2019er og de synlige ressourcebegr\u00e6nsninger samt den valgte belastning og antallet af gentagelser. Hvis man bevidst sammenligner to forskellige hostingpakker, giver resultatet et billede af deres respektive samlede konfiguration. Forskelle i processor, begr\u00e6nsninger, database eller caching m\u00e5 derfor ikke alene tolkes som en CPU-fordel uden yderligere diagnose.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"testmatrix\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"testmatrix\" 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\">V\u00e6lg passende arbejdsbelastninger og m\u00e5leparametre<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Valget af test afh\u00e6nger af det sp\u00f8rgsm\u00e5l, du \u00f8nsker at f\u00e5 besvaret. En <strong style=\"font-weight:700;color:inherit\">Mikrobenchmark<\/strong> unders\u00f8ger en begr\u00e6nset beregningsopgave; en HTTP-test tager h\u00f8jde for vejen gennem webstakken. SPEC-resultater supplerer sammenligningen med standardiserede CPU-intensive systemtests, men erstatter ikke en test af den egne PHP-applikation.  <\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"Tre testtyper og deres begr\u00e6nsninger\" 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\">Tre testtyper og deres begr\u00e6nsninger<\/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\">Testtype<\/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\">Budskab og anvendelse<\/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\">Den vigtigste gr\u00e6nse<\/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\">PHP-mikrobenchmark<\/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\">Sammenligner udf\u00f8relsen af en bestemt PHP-funktion under fastlagte betingelser.<\/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\">Resultatet g\u00e6lder i f\u00f8rste omgang kun for den testede kode og k\u00f8rselstiden.<\/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\">SPEC CPU<\/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\">Sammenligner systemer p\u00e5 baggrund af standardiserede, beregningskr\u00e6vende opgaver; hastighed og hastighedsrate tager h\u00f8jde for forskellige aspekter.<\/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\">Dette er ikke en test af PHP-webhosting; v\u00e6r opm\u00e6rksom p\u00e5 Suite og den fulde systemkonfiguration.<\/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\">HTTP-applikationstest<\/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\">Tjekker svarstider og gennemstr\u00f8mning for en endepunkt via den valgte webstack.<\/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\">Resultatet best\u00e5r af flere komponenter og isolerer ikke CPU\u2019en.<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">For en enkelt dynamisk foresp\u00f8rgsel v\u00e6lger du en repr\u00e6sentativ side eller API-rute og starter med lav parallelitet. Ruten skal rent faktisk udf\u00f8res af PHP: Et svar, der udelukkende leveres fra en forudg\u00e5ende sidecache, ville ganske vist v\u00e6re en gyldig cache-test, men siger ikke meget om PHP-behandlingen.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ved samtidige bes\u00f8gende tester du det samme slutpunkt ved flere fastlagte belastningsniveauer. P\u00e5 den m\u00e5de kan du se, om svartiderne og den vellykkede gennemstr\u00f8mning \u00e6ndrer sig i takt med stigende parallelitet. Ved en databasekr\u00e6vende rute b\u00f8r datam\u00e6ngden, databasens placering og cache-tilstanden forblive u\u00e6ndret mellem sammenligningsk\u00f8rslerne.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En CPU-kr\u00e6vende funktion i applikationen kan du desuden unders\u00f8ge isoleret ved hj\u00e6lp af PHPBench, f.eks. en databehandling uden netv\u00e6rksadgang. Et bedre resultat viser i f\u00f8rste omgang kun en fordel for denne funktion under de valgte k\u00f8rselsbetingelser. Om dette medf\u00f8rer en m\u00e6rkbar fordel for en hel side, m\u00e5 applikationstesten vise. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"praxisablauf\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"praxisablauf\" 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\">Udf\u00f8r en staging-test med wrk<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Test kun i et isoleret testmilj\u00f8 med udtrykkelig tilladelse. Opret en ufarlig, repr\u00e6sentativ l\u00e6serute, og brug passende testdata. Fastl\u00e6g inden start en maksimal belastning samt afbrydelseskriterier, f.eks. fejl, timeouts eller forstyrrelser af andre tjenester.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">F\u00f8lgende kommando er beregnet til en terminal p\u00e5 en lokal staging-instans, der udtrykkeligt er konfigureret til dette form\u00e5l. Den forberedte rute skal v\u00e6re tilg\u00e6ngelig p\u00e5 port 8080; kommandoen skaber faktisk belastning og er ikke beregnet til et ukendt eller produktivt system. <\/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\">Kopier kode<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Kopieret<\/span><span data-wh-copy-fallback hidden>Kode er markeret \u2013 kopier venligst<\/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\">wrk -t2 -c4 -d30s --latency http:\/\/127.0.0.1:8080\/<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Opkaldet bruger to belastningsgenerator-tr\u00e5de, fire \u00e5bne forbindelser og har en varighed p\u00e5 30 sekunder. Indstillingen <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">--latency<\/code> anmoder om en detaljeret oversigt over ventetider. Fire forbindelser er her valgt som udgangspunkt for dette eksempel og udg\u00f8r ikke en generel anbefaling med hensyn til antallet af bes\u00f8gende eller en servers kapacitet. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Den almindelige percentiludskrift fra wrk indeholder dog ikke en p95. For at opn\u00e5 en reproducerbar p95-analyse skal du gemme f\u00f8lgende Lua-script p\u00e5 belastningsgeneratoren som <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">percentiles.lua<\/code>. Den angiver p50 og p95 fra latenstidsstatistikken i mikrosekunder; n\u00e5r man deler med 1.000, f\u00e5r man millisekunder. <\/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>Kode<\/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\">Kopier kode<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Kopieret<\/span><span data-wh-copy-fallback hidden>Kode er markeret \u2013 kopier venligst<\/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-lua\" style=\"font:inherit;color:inherit;background:transparent;padding:0;border:0;white-space:inherit\">function done(summary, latency, requests)\n  io.write(string.format(&quot;p50: %.0f us\\n&quot;, latency:percentile(50.0)))\n  io.write(string.format(&quot;p95: %.0f us\\n&quot;, latency:percentile(95.0)))\nend<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Start den samme lokale staging-test med scriptet for at udf\u00f8re den egentlige m\u00e5ling. Filstien g\u00e6lder for en terminal i den mappe, hvor scriptfilen ligger. Ogs\u00e5 denne k\u00f8rsel skaber belastning; dokument\u00e9r de to udskrevne percentiler sammen med fejl og den separat kontrollerede svar kvalitet. <\/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\">Kopier kode<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Kopieret<\/span><span data-wh-copy-fallback hidden>Kode er markeret \u2013 kopier venligst<\/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\">wrk -t2 -c4 -d30s --latency -s percentiles.lua http:\/\/127.0.0.1:8080\/<\/code><\/pre><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Planl\u00e6g en separat <strong style=\"font-weight:700;color:inherit\">Opvarmningsfase<\/strong> f\u00f8r du registrerer de egentlige m\u00e5linger. Gentag derefter hvert fastlagt belastningsniveau, og varier om muligt r\u00e6kkef\u00f8lgen af sammenligningssystemerne. Not\u00e9r, hvor l\u00e6nge opvarmningen varede, og om cachen var i den \u00f8nskede tilstand ved m\u00e5lingens start.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">For\u00f8g antallet af forbindelser kun inden for de aftalte gr\u00e6nser, og kontroller afbrydelseskriterierne efter hvert trin. Hold ogs\u00e5 \u00f8je med belastningsgeneratoren: Hvis den selv er fuldt udnyttet, kan den begr\u00e6nse resultatet. Kontroller desuden statuskoder og svarindhold; en hurtigt leveret fejlside eller et forkert svar t\u00e6ller ikke som en vellykket applikationsanmodning.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"messprotokoll\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"messprotokoll\" 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\">Dokumentere belastningsniveauer og resultater<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En m\u00e5leprotokol knytter tallene sammen med de betingelser, under hvilke de er opst\u00e5et. Noter for hvert k\u00f8rsel omgivelserne, slutpunktet, cache-tilstanden og belastningsniveauet sammen med resultaterne. F\u00f8lgende skema bruger blandt andet v\u00e6rdier, som wrk henholdsvis FPM-statussiden stiller til r\u00e5dighed; du skal selv supplere med en indholdsm\u00e6ssig kontrol af svarene.  <\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"M\u00e5leprotokol for en HTTP-k\u00f8rsel\" 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\">M\u00e5leprotokol for en HTTP-k\u00f8rsel<\/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\">Felt<\/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\">Hvad der registreres<\/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\">Omgivelser<\/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\">Server eller hostingpakke, PHP- og applikationsversion samt relevant konfiguration<\/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\">Arbejdsbelastning og cache<\/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\">Rute, testdata, svarkontrol og cache-status<\/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\">Sidste trin<\/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\">Belastningsmodel, forbindelsestal eller foruddefineret foresp\u00f8rgselsfrekvens, varighed og opvarmningsfase<\/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\">Vellykkede foresp\u00f8rgsler<\/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\">Korrekte svar pr. sekund; statuskoder og indhold skal kontrolleres separat<\/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\">Forsinkelse<\/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\">Median og p95 for samme k\u00f8rsel; udskrives ved k\u00f8rsel via det viste Lua-script<\/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\">Fejl<\/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\">Fejlmeddelelser og timeouts<\/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\">Oplysninger om ressourcer<\/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\">CPU-udnyttelse og, i det omfang det er tilg\u00e6ngeligt, FPM-processtatus og k\u00f8<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Medianen angiver midtpunktet for de observerede svartider. Det <strong style=\"font-weight:700;color:inherit\">p95<\/strong> er den v\u00e6rdi, som 95 procent af de m\u00e5lte svar ikke overstiger. Tilsammen viser disse to st\u00f8rrelser, om der ud over en typisk foresp\u00f8rgsel ogs\u00e5 sker \u00e6ndringer i den langsommere del af fordelingen. Fortolk dem altid sammen med fejl og timeouts.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Skel mellem et fast antal forbindelser og en forudbestemt foresp\u00f8rgselsfrekvens. Ved en forbindelsesbaseret test som i eksemplet kan langsomme svar medf\u00f8re, at der genereres f\u00e6rre nye foresp\u00f8rgsler pr. sekund via de samme forbindelser. Den m\u00e5lte latenstid beskriver da ikke umiddelbart adf\u00e6rden ved en u\u00e6ndret h\u00f8j ankomstfrekvens. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Sammenlign derfor kun tilstr\u00e6kkeligt ens belastningspunkter: samme rute og svarkontrol, sammenlignelige cache-tilstande samt samme belastningsmodel og samme belastningsniveau. En lav p95-v\u00e6rdi ved lav parallelitet kan ikke umiddelbart sammenlignes med en p95-v\u00e6rdi under overbelastning. Rapporter flere k\u00f8rsler og deres spredning i stedet for at angive en enkelt gunstig v\u00e6rdi som resultat.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"engpassanalyse\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"engpassanalyse\" 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\">Unders\u00f8gelse af FPM og ressourcebegr\u00e6nsninger<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Hvis b\u00e5de k\u00f8en og p95-svaretiden stiger i takt med den stigende belastning, er det en god id\u00e9 at se n\u00e6rmere p\u00e5 PHP-FPM-puljen. Sammenlign de aktuelle v\u00e6rdier for <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">active processes<\/code>, <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">idle processes<\/code> og <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">listen queue<\/code> med den konfigurerede \u00f8vre gr\u00e6nse <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>. Hvis alle tilladte processer er aktive, ingen er ledige, og der er ventende anmodninger, tyder det p\u00e5 en <strong style=\"font-weight:700;color:inherit\">Poolgr\u00e6nse<\/strong> eller arbejdere, der har v\u00e6ret besk\u00e6ftiget i lang tid, men ikke n\u00f8dvendigvis p\u00e5 en for langsom CPU.  <\/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-pool-warteschlange-11b350b5-detail2-c8c070d7a6-1024x683.webp\" class=\"wp-image-22213\" alt=\"AI-genereret illustration af skiver, der venter foran begr\u00e6nsede \u00e5bninger i en procespool\" decoding=\"async\" srcset=\"https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-pool-warteschlange-11b350b5-detail2-c8c070d7a6-1024x683.webp 1024w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-pool-warteschlange-11b350b5-detail2-c8c070d7a6-300x200.webp 300w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-pool-warteschlange-11b350b5-detail2-c8c070d7a6-768x512.webp 768w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-pool-warteschlange-11b350b5-detail2-c8c070d7a6-18x12.webp 18w, https:\/\/webhosting.de\/wp-content\/uploads\/2026\/11\/php-fpm-pool-warteschlange-11b350b5-detail2-c8c070d7a6.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\">AI-genereret illustration: Optagede processer kan for\u00e5rsage ventende anmodninger, uden at det kan bevises, at CPU\u2019en er \u00e5rsagen.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Annoncen <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> derimod viser, at procesgr\u00e6nsen er blevet n\u00e5et tidligere siden poolens start. Dette beviser i sig selv hverken, at der er en aktuel k\u00f8, eller at alle eksisterende processer er i gang lige nu. Ligeledes betyder det maksimale antal eksisterende processer ikke, at alle er aktive. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Workere kan ogs\u00e5 vente p\u00e5 databaseforesp\u00f8rgsler eller andre eksterne tjenester. Sammenlign derfor poolstatus og CPU-udnyttelse med de observerede svartider: En fuld k\u00f8 ved lav CPU-udnyttelse tyder p\u00e5, at man f\u00f8rst b\u00f8r unders\u00f8ge ventetiderne og workernes udnyttelse. Et st\u00f8rre antal pools er ikke automatisk l\u00f8sningen, da yderligere processer ogs\u00e5 kr\u00e6ver ressourcer.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">FPM-statusv\u00e6rdierne g\u00e6lder for den p\u00e5g\u00e6ldende pool; t\u00e6llerne nulstilles ved en genstart. Not\u00e9r derfor poolen og tidspunktet for genstart i m\u00e5leprotokollen, og sammenlign t\u00e6llerstande kun inden for et passende tidsrum. Beskyt en aktiveret statusside mod uautoriseret adgang, da den afsl\u00f8rer driftsoplysninger om poolen. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ved VPS og shared hosting betyder en tildelt vCPU ikke n\u00f8dvendigvis en eksklusiv fysisk kerne. Hvor cgroup-v2-data er tilg\u00e6ngelige, viser <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">cpu.max<\/code> den konfigurerede begr\u00e6nsning af CPU-b\u00e5ndbredden; <code data-no-translation style=\"font:600 .87em\/1.5 ui-monospace,monospace;color:#235063;background:#edf3f5;border-radius:4px;padding:.1em .3em\">cpu.stat<\/code> kan blandt andet t\u00e6lle for <strong style=\"font-weight:700;color:inherit\">Neddrosling<\/strong> indeholdt. \u00c6ndringer af disse t\u00e6llere under et k\u00f8rsel hj\u00e6lper med at diagnosticere en effektiv begr\u00e6nsning. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Kontroller om muligt ogs\u00e5 overordnede cgroups: En gr\u00e6nse, der er indstillet der, kan p\u00e5virke den tilg\u00e6ngelige regnetid, selvom den umiddelbart synlige konfiguration virker gener\u00f8s. Ikke alle t\u00e6llere afspejler arvede begr\u00e6nsninger fuldt ud. Hvis disse oplysninger mangler i hostingpakken, er den begr\u00e6nsede synlighed udtrykkeligt en del af begr\u00e6nsningerne i analysen. <\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"streuung\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"streuung\" 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\">At opdage spredning og fejlm\u00e5linger<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En enkelt testk\u00f8rsel kan give et tilf\u00e6ldigt gunstigt eller ugunstigt billede. Gentag de samme belastningsniveauer p\u00e5 dokumenterede tidspunkter, og varier om muligt r\u00e6kkef\u00f8lgen af sammenligningssystemerne. Is\u00e6r n\u00e5r ressourcerne deles, kan den tilg\u00e6ngelige ydeevne svinge; rapporter derfor ud over et typisk resultat ogs\u00e5 den observerede <strong style=\"font-weight:700;color:inherit\">spredning<\/strong> og antallet af l\u00f8b.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">S\u00f8rg for, at gentagelserne bruger den samme cache-tilstand og det samme datas\u00e6t. En k\u00f8rsel med en opvarmet side- eller databasecache kan ikke umiddelbart sammenlignes med en kold k\u00f8rsel. Hvis et tilsyneladende hurtigere svar udelukkende stammer fra en sidecache, siger det ikke meget om, hvor hurtigt PHP udf\u00f8rer det dynamiske arbejde.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En CLI-mikrobenchmark er heller ikke et FPM-resultat: Den k\u00f8rer i en anden eksekveringskontekst og kan anvende andre OPcache- eller JIT-indstillinger. Dokumenter de faktisk aktive indstillinger for begge runtime-milj\u00f8er hver for sig, i stedet for at udlede dem ud fra PHP-versionen. En fordel i mikrotesten beh\u00f8ver ikke at vise sig i samme omfang i applikationens HTTP-test. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Medregn kun indholdsm\u00e6ssigt korrekte, vellykkede svar i den vellykkede gennemstr\u00f8mning. Hurtige fejlsider eller timeouts kan ellers forvride en sammenligning betydeligt. Ved markante afvigelser b\u00f8r du ogs\u00e5 kontrollere ventetider i databasen, \u00e6ndringer i cachen og synlige ressourcebegr\u00e6nsninger, f\u00f8r du udelukkende tilskriver forskellen til CPU\u2019en.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Das <strong style=\"font-weight:700;color:inherit\">Taktadf\u00e6rd<\/strong> kan ligeledes bidrage til spredningen. Hvilken frekvensregulering der er hensigtsm\u00e6ssig, afh\u00e6nger af platformen og belastningen; en generel indstilling kan ikke erstatte en sammenligning under de samme betingelser. Bidraget til <a href=\"https:\/\/webhosting.de\/da\/cpu-regulatorens-indflydelse-pa-hostingserverens-ydeevne\/\">CPU-regulator p\u00e5 hosting-servere<\/a> forklarer sammenh\u00e6ngene med henblik p\u00e5 en mere indg\u00e5ende gennemgang.<\/p>\n<\/section><section class=\"wh-section\" aria-labelledby=\"entscheidung\" style=\"display:block;margin:0 0 36px;min-width:0\"><h2 id=\"entscheidung\" 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\">Brug resultaterne til at v\u00e6lge hosting<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ved foresp\u00f8rgsler, der hovedsageligt er CPU-intensive, er <strong style=\"font-weight:700;color:inherit\">Tid pr. arbejdsenhed<\/strong> et vigtigt udv\u00e6lgelseskriterium. Sammenlign derfor en repr\u00e6sentativ PHP-funktion med dokumenteret k\u00f8retid, og kontroller derefter, om fordelen ogs\u00e5 viser sig ved den dynamiske HTTP-rute. En mikrobenchmark beskriver i f\u00f8rste omgang kun den testede kode, ikke hele hostingtilbuddet. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Hvis du forventer mange samtidige bes\u00f8gende, er en hurtig enkeltforesp\u00f8rgsel ikke tilstr\u00e6kkelig. Det er desuden afg\u00f8rende, hvor mange korrekte svar pr. sekund systemet leverer ved et fastlagt belastningsniveau, og hvordan p95-latensen udvikler sig inden for det acceptable fejlinterval. Et system med h\u00f8jere gennemstr\u00f8mning er ikke automatisk bedre til dit projekt, hvis dets langsomme svar overskrider kravene.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ved database- eller cacheafh\u00e6ngige applikationer skal du v\u00e6gte <strong style=\"font-weight:700;color:inherit\">Anvendelsestest<\/strong> mere end en CPU-score. En typisk rute med et sammenligneligt datas\u00e6t viser, hvordan samspillet i stakken fungerer under de valgte betingelser. Et SPEC-resultat kan supplere forudv\u00e6lgelsen, men beskriver et testet system og erstatter ikke en PHP-webhosting-test. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">F\u00f8r du foretager dit valg, skal du fastl\u00e6gge, hvilke responstider, fejlprocenter og belastningsniveauer der er acceptable for applikationen. Sammenlign derefter kun resultater med en passende belastningsmodel og en sammenlignelig cache-tilstand. Du skal vurdere de forskellige hostingpakker som samlede konfigurationer; ud fra forskellen mellem dem kan CPU-andelen ikke udledes uden yderligere diagnose.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Beslutningen g\u00e6lder for den m\u00e5lte tilstand, ikke for eventuelle senere versioner af applikationen eller spidsbelastninger. Gentag de relevante tests efter v\u00e6sentlige \u00e6ndringer i PHP, applikationen, databasen, cachen eller ressourcebegr\u00e6nsningerne. P\u00e5 den m\u00e5de kan du se, om de reserver, der tidligere var tilstr\u00e6kkelige, stadig er til stede under de nye forhold.<\/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\">Kilder og den aktuelle videnskabelige viden<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Status for unders\u00f8gelsen: <time datetime=\"2026-11-04\">2026-11-04<\/time><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Unders\u00f8gelses- og kildestatus: 4. november 2026. SPEC CPU 2017 og CPU 2026 er separate testsuiter; resultaterne g\u00e6lder for det testede system og de dokumenterede betingelser.<\/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:\/\/phpbench.github.io\/phpbench\/<\/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:\/\/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:\/\/spec.org\/cpu2026\/<\/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.spec.org\/cpu2026\/results\/<\/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:\/\/spec.org\/cpu2017\/Docs\/runrules.html<\/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\/en\/opcache.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:\/\/github.com\/wg\/wrk\/blob\/master\/README.md<\/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.kernel.org\/doc\/html\/latest\/admin-guide\/cgroup-v2.html?highlight=freezer<\/span><\/p><\/div><\/section><\/div>","protected":false},"excerpt":{"rendered":"<p>En CPU-score alene viser ikke, hvor hurtigt en PHP-applikation reagerer i den daglige drift af et webhosting-milj\u00f8. Artiklen forklarer mikrobenchmarks, HTTP-belastningstests og diagnosticering af FPM- og ressourcebegr\u00e6nsninger.<\/p>","protected":false},"author":1,"featured_media":22211,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[676],"tags":[],"class_list":["post-22208","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-server_vm"],"acf":[],"_links":{"self":[{"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/posts\/22208","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/comments?post=22208"}],"version-history":[{"count":3,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/posts\/22208\/revisions"}],"predecessor-version":[{"id":22214,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/posts\/22208\/revisions\/22214"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/media\/22211"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/media?parent=22208"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/categories?post=22208"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/da\/wp-json\/wp\/v2\/tags?post=22208"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}