{"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-prestandatest-php-webbhotell","status":"publish","type":"post","link":"https:\/\/webhosting.de\/sv\/server-cpu-benchmark-php-webhosting\/","title":{"rendered":"Benchmarking av server-CPU:er f\u00f6r PHP: Tester f\u00f6r verkliga arbetsbelastningar inom webbhotell"},"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\">Ett enda CPU-resultat r\u00e4cker inte f\u00f6r att bed\u00f6ma en servers prestanda f\u00f6r PHP. Kombinera ett reproducerbart <strong style=\"font-weight:700;color:inherit\">PHP-mikrobenchmark<\/strong> med ett HTTP-test av din applikation: P\u00e5 s\u00e5 s\u00e4tt kan du j\u00e4mf\u00f6ra en specifik ber\u00e4kningsuppgift och samtidigt \u00f6vervaka svarstider, genomstr\u00f6mning och fel under belastning. Ett webbhotell-benchmarktest m\u00e4ter \u00e4ven databasen, cachen och PHP-FPM. Dess processpool kan begr\u00e4nsa antalet f\u00f6rfr\u00e5gningar utan att enbart CPU:n utg\u00f6r flaskhalsen. Avg\u00f6rande \u00e4r j\u00e4mf\u00f6rbara f\u00f6rh\u00e5llanden och en efterf\u00f6ljande diagnos.  <\/p>\n<nav class=\"wh-toc\" aria-label=\"Inneh\u00e5ll i denna 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 direkt till avsnittet<\/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\">Vad en PHP-prestandatest ska ge 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\">Skillnaden mellan CPU-resultat och applikationstester<\/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\">Fastst\u00e4lla j\u00e4mf\u00f6rbara testf\u00f6rh\u00e5llanden<\/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\u00e4lj l\u00e4mpliga arbetsbelastningar och m\u00e4tv\u00e4rden<\/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\">Utf\u00f6ra 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\">Dokumentera belastningsniv\u00e5er och resultat<\/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\u00f6ka FPM och resursbegr\u00e4nsningar<\/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\">Uppt\u00e4cka spridning och felm\u00e4tningar<\/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\">Anv\u00e4nda resultaten vid valet av webbhotell<\/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\">Vad en PHP-prestandatest ska ge svar p\u00e5<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ett PHP-CPU-benchmark kan till att b\u00f6rja med visa hur l\u00e5ng tid ett system beh\u00f6ver f\u00f6r att utf\u00f6ra en viss ber\u00e4kningsuppgift. Detta \u00e4r s\u00e4rskilt anv\u00e4ndbart n\u00e4r en enskild f\u00f6rfr\u00e5gan tar mycket tid p\u00e5 grund av PHP-ber\u00e4kningar. En h\u00f6gre <strong style=\"font-weight:700;color:inherit\">Prestanda f\u00f6r enk\u00e4rniga processorer<\/strong> kan f\u00f6rkorta bearbetningstiden f\u00f6r s\u00e5dana uppgifter; man kan dock inte utg\u00e5 fr\u00e5n enbart ett CPU-v\u00e4rde f\u00f6r att ber\u00e4kna svarstiden f\u00f6r en hel webbplats.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En andra fr\u00e5ga g\u00e4ller hur applikationen beter sig vid samtidiga \u00e5tkomstf\u00f6rs\u00f6k: Hur m\u00e5nga korrekta svar ger den per sekund, och hur l\u00e4nge f\u00e5r anv\u00e4ndarna v\u00e4nta? F\u00f6r detta kr\u00e4vs en <strong style=\"font-weight:700;color:inherit\">J\u00e4mf\u00f6relse av webbhotell<\/strong> via HTTP \u00e4r meningsfullt. Det kartl\u00e4gger v\u00e4gen genom webbservern och PHP samt, i f\u00f6rekommande fall, databasen, cachen och n\u00e4tverket. Just denna kombination g\u00f6r det praktiskt till\u00e4mpligt, men f\u00f6rhindrar samtidigt att man kan dra en isolerad slutsats om CPU:n.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Den tredje fr\u00e5gan g\u00e4ller flaskhalsen. Om en f\u00f6rfr\u00e5gan till exempel v\u00e4ntar p\u00e5 ett databass\u00f6k kan en snabbare ber\u00e4kning inte s\u00e4ga mycket om dess totala tid. \u00c4ven en cache p\u00e5verkar resultatet: om en sida redan levereras i sin helhet innan PHP hinner bearbeta den, m\u00e4ter anropet inte den dynamiska applikationens k\u00f6rning.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Vid parallell belastning kan dessutom PHP-FPM-poolen begr\u00e4nsa hur m\u00e5nga f\u00f6rfr\u00e5gningar som behandlas samtidigt. Dess statussida visar bland annat information om aktiva processer och v\u00e4ntande f\u00f6rfr\u00e5gningar. En v\u00e4xande k\u00f6 \u00e4r d\u00e4rf\u00f6r ett sk\u00e4l att utf\u00f6ra en diagnostik, inte ett direkt bevis p\u00e5 att processorn \u00e4r f\u00f6r l\u00e5ngsam.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">N\u00e4r man ska v\u00e4lja webbhotell \u00e4r det bra att betrakta dessa fr\u00e5gor var f\u00f6r sig: f\u00f6rst den j\u00e4mf\u00f6rbara arbetsenheten, sedan anv\u00e4ndningen vid l\u00e5g respektive h\u00f6g belastning och slutligen de resurser som begr\u00e4nsar resultatet. Hur CPU, arbetsminne och lagringsutrymme i grunden samverkar f\u00f6rklaras i artikeln om <a href=\"https:\/\/webhosting.de\/sv\/hoegpresterande-webbhotell-hardvara-cpu-nvme-minne-prestanda-turbo-server\/\">H\u00e5rdvara f\u00f6r h\u00f6gpresterande webbhotell<\/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\">Skillnaden mellan CPU-resultat och applikationstester<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En <strong style=\"font-weight:700;color:inherit\">Mikrobenchmark<\/strong> upprepar en liten, noggrant definierad uppgift. Med PHPBench kan man till exempel unders\u00f6ka en funktion f\u00f6r databehandling under fastst\u00e4llda f\u00f6rh\u00e5llanden. Resultatet hj\u00e4lper till att j\u00e4mf\u00f6ra denna funktion och dess k\u00f6rningsmilj\u00f6; det beskriver varken automatiskt en fullst\u00e4ndig f\u00f6rfr\u00e5gan eller prestandan hos ett CMS eller en webbutik. <\/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=\"En AI-genererad symbolbild av en urmonterad serverprocessor p\u00e5 en antistatisk underl\u00e4gg\" 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-genererad illustrativ bild: En mikrob\u00e4nkmark unders\u00f6ker en uppgift p\u00e5 det testade systemet, inte hela webbstacken.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ett HTTP-applikationstest besvarar en annan fr\u00e5ga: Hur reagerar den valda applikationen via den webbstack som faktiskt anv\u00e4nds? Det tar h\u00e4nsyn till exempelvis PHP-FPM, databasen och cacher, i den m\u00e5n de ing\u00e5r i det testade anropet. D\u00e4rmed l\u00e4mpar det sig f\u00f6r att utv\u00e4rdera ett webbhotellserbjudande, men kan inte p\u00e5 egen hand p\u00e5visa vilken komponent som \u00e4r ansvarig f\u00f6r en viss skillnad.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">SPEC CPU kompletterar s\u00e5dana tester med standardiserade, ber\u00e4kningsintensiva arbetsbelastningar. SPEC CPU 2026 inneh\u00e5ller sviterna f\u00f6r heltal och flyttal samt resultat f\u00f6r hastighet och genomstr\u00f6mning. Hastighet avser tiden f\u00f6r uppgifterna, medan genomstr\u00f6mning avser genomstr\u00f6mningen. Ett hastighetsv\u00e4rde \u00e4r inte automatiskt ett rent enkelk\u00e4rnv\u00e4rde: SPEC p\u00e5pekar att det f\u00f6rekommer ytterligare parallellitet vid heltalshastighetstesterna i 2026-sviten.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">F\u00f6r att en SPEC-j\u00e4mf\u00f6relse ska vara tillf\u00f6rlitlig m\u00e5ste testsuiten, m\u00e4tv\u00e4rdet och resultattypen <strong style=\"font-weight:700;color:inherit\">bas eller topp<\/strong> \u00f6verensst\u00e4mmer. Det fullst\u00e4ndigt testade systemet spelar ocks\u00e5 en viktig roll: F\u00f6rutom processorn p\u00e5verkar bland annat minne, kompilator och konfiguration resultatet. Publicerade v\u00e4rden \u00e4r d\u00e4rf\u00f6r inte en isolerad egenskap hos CPU-modellen och ers\u00e4tter inte ett PHP-test.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">SPEC CPU 2017 och CPU 2026 anv\u00e4nder olika testupps\u00e4ttningar; deras siffror kan inte j\u00e4mf\u00f6ras p\u00e5 samma skala. Den som g\u00f6r ett urval b\u00f6r d\u00e4rf\u00f6r j\u00e4mf\u00f6ra den fullst\u00e4ndiga resultatrapporten ist\u00e4llet f\u00f6r en f\u00f6rkortad ranglista. Om en kandidat \u00e4r l\u00e4mplig f\u00f6r den egna applikationen visar f\u00f6rst ett l\u00e4mpligt utformat applikationstest.  <\/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\">Fastst\u00e4lla j\u00e4mf\u00f6rbara testf\u00f6rh\u00e5llanden<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En r\u00e4ttvis j\u00e4mf\u00f6relse b\u00f6rjar med samma applikationsversion och en j\u00e4mf\u00f6rbar datam\u00e4ngd. \u00c4ven den valda v\u00e4gen och det f\u00f6rv\u00e4ntade svaret m\u00e5ste st\u00e4mma \u00f6verens: En produktsida med m\u00e5nga databas\u00e5tkomster besvarar en annan fr\u00e5ga \u00e4n en enkel API-funktion. Kontrollera d\u00e4rf\u00f6r inte bara om ett svar kommer in, utan ocks\u00e5 om dess inneh\u00e5ll st\u00e4mmer \u00f6verens med den avsedda uppgiften.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Notera PHP-versionen och till\u00e4ggsmodulerna, liksom webbservern, PHP-FPM-konfigurationen och databasen. N\u00e4tverksv\u00e4gen mellan belastningsgeneratorn och applikationen ska ocks\u00e5 anges i protokollet. Olika v\u00e4gar eller databasplatser kan p\u00e5verka den uppm\u00e4tta svarstiden, \u00e4ven om PHP-k\u00f6rningen skulle vara lika snabb p\u00e5 b\u00e5da systemen.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Det \u00e4r s\u00e4rskilt viktigt att skilja mellan <strong style=\"font-weight:700;color:inherit\">CLI och PHP-FPM<\/strong>: Ett test i kommandoraden unders\u00f6ker inte automatiskt samma k\u00f6rningskonfiguration som en HTTP-f\u00f6rfr\u00e5gan. Dokumentera de OPcache- och JIT-inst\u00e4llningar som faktiskt anv\u00e4nds i b\u00e5da sammanhangen. Deras effekt och standardinst\u00e4llningar beror bland annat p\u00e5 PHP-versionen; en generell antagande r\u00e4cker inte f\u00f6r j\u00e4mf\u00f6relsen.  <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Den <strong style=\"font-weight:700;color:inherit\">Cache-status<\/strong> m\u00e5ste vara j\u00e4mf\u00f6rbar. En kall cache och en redan uppv\u00e4rmd cache ger svar p\u00e5 olika fr\u00e5gor; b\u00e5da kan vara relevanta, men b\u00f6r utv\u00e4rderas separat. Detsamma g\u00e4ller datam\u00e4ngd och testdata: om arbetsomf\u00e5nget f\u00f6r\u00e4ndras kan en tidsskillnad inte l\u00e4ngre entydigt tillskrivas systemet.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Notera dessutom CPU-modell, tilldelade vCPU:er och synliga resursbegr\u00e4nsningar samt den valda belastningen och antalet repetitioner. Om man medvetet j\u00e4mf\u00f6r tv\u00e5 olika hostingpaket ger resultatet en bild av deras respektive totala konfiguration. Skillnader i processor, gr\u00e4nser, databas eller caching f\u00e5r d\u00e5 inte tolkas enbart som en CPU-f\u00f6rdel utan ytterligare diagnostik.<\/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\u00e4lj l\u00e4mpliga arbetsbelastningar och m\u00e4tv\u00e4rden<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Valet av test beror p\u00e5 vilken fr\u00e5ga du vill f\u00e5 svar p\u00e5. Ett <strong style=\"font-weight:700;color:inherit\">Mikrobenchmark<\/strong> unders\u00f6ker en begr\u00e4nsad ber\u00e4kningsuppgift; ett HTTP-test omfattar v\u00e4gen genom webbstacken. SPEC-resultaten kompletterar j\u00e4mf\u00f6relsen med standardiserade CPU-intensiva systemtester, men ers\u00e4tter inte ett test av den egna PHP-applikationen.  <\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"Tre typer av tester och deras begr\u00e4nsningar\" 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 typer av tester och deras begr\u00e4nsningar<\/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\">Testtyp<\/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\">Budskap och anv\u00e4ndningsomr\u00e5de<\/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 viktigaste gr\u00e4nsen<\/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\">J\u00e4mf\u00f6r hur en specifik PHP-funktion fungerar under angivna f\u00f6rh\u00e5llanden.<\/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\u00e4ller inledningsvis endast f\u00f6r den testade koden och k\u00f6rningstiden.<\/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\">J\u00e4mf\u00f6r system utifr\u00e5n standardiserade ber\u00e4kningskr\u00e4vande uppgifter; hastighet och genomstr\u00f6mning belyser olika 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\">Inget test av PHP-webbhotell; beakta Suite och den fullst\u00e4ndiga systemkonfigurationen.<\/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\">Kontrollerar svarstider och genomstr\u00f6mning f\u00f6r en slutpunkt via den valda webbstacken.<\/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 av flera komponenter och isolerar inte CPU:n.<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">F\u00f6r en enskild dynamisk f\u00f6rfr\u00e5gan v\u00e4ljer du en representativ sida eller API-rutt och b\u00f6rjar med l\u00e5g parallellitet. Rutten m\u00e5ste faktiskt k\u00f6ra PHP: ett svar som helt och h\u00e5llet levereras fr\u00e5n en uppstr\u00f6ms sidcache skulle visserligen vara ett giltigt cachetest, men s\u00e4ger inte mycket om PHP-bearbetningen.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">F\u00f6r samtidiga bes\u00f6kare testar du samma slutpunkt vid flera f\u00f6rutbest\u00e4mda belastningsniv\u00e5er. P\u00e5 s\u00e5 s\u00e4tt kan du se om svarstiderna och den framg\u00e5ngsrika genomstr\u00f6mningen f\u00f6r\u00e4ndras n\u00e4r parallelliteten \u00f6kar. Vid en databasintensiv rutt b\u00f6r datam\u00e4ngden, databasens placering och cache-statusen f\u00f6rbli of\u00f6r\u00e4ndrade mellan j\u00e4mf\u00f6relsek\u00f6rningarna.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En CPU-kr\u00e4vande funktion i applikationen kan du dessutom unders\u00f6ka isolerat med PHPBench, till exempel en databehandling utan n\u00e4tverks\u00e5tkomst. Ett b\u00e4ttre resultat visar inledningsvis endast en f\u00f6rdel f\u00f6r just denna funktion under de valda k\u00f6rningsf\u00f6rh\u00e5llandena. Om detta leder till en m\u00e4rkbar f\u00f6rdel f\u00f6r en hel sida m\u00e5ste applikationstestet visa. <\/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\">Utf\u00f6ra staging-test med wrk<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Testa endast i en isolerad testmilj\u00f6 med uttryckligt tillst\u00e5nd. Konfigurera en ofarlig, representativ l\u00e4sv\u00e4g och anv\u00e4nd l\u00e4mpliga testdata. Fastst\u00e4ll en maximal belastning samt avbrottskriterier innan du startar, till exempel fel som uppst\u00e5r, tids\u00f6verskridningar eller p\u00e5verkan p\u00e5 andra tj\u00e4nster.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">F\u00f6ljande kommando \u00e4r avsett f\u00f6r en terminal p\u00e5 en lokal staging-instans som uttryckligen har konfigurerats f\u00f6r detta \u00e4ndam\u00e5l. Den f\u00f6rberedda rutten m\u00e5ste vara tillg\u00e4nglig p\u00e5 port 8080; kommandot genererar faktiskt belastning och \u00e4r inte avsett f\u00f6r ett ok\u00e4nt 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\">Kopiera koden<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Kopierat<\/span><span data-wh-copy-fallback hidden>Koden \u00e4r markerad \u2013 kopiera den<\/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\">Anropet anv\u00e4nder tv\u00e5 tr\u00e5dar f\u00f6r belastningsgeneratorn, fyra \u00f6ppna anslutningar och en k\u00f6rningstid p\u00e5 30 sekunder. Alternativet <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> beg\u00e4r en detaljerad latensrapport. Fyra anslutningar \u00e4r en vald utg\u00e5ngspunkt f\u00f6r detta exempel, inte en allm\u00e4n rekommendation f\u00f6r antalet bes\u00f6kare eller en servers kapacitet. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Den vanliga percentilutmatningen fr\u00e5n wrk inneh\u00e5ller dock inget p95-v\u00e4rde. F\u00f6r en reproducerbar p95-utv\u00e4rdering ska du spara f\u00f6ljande Lua-skript p\u00e5 belastningsgeneratorn 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>. Latensstatistiken anger p50 och p95 i mikrosekunder; om man delar 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>Kod<\/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\">Kopiera koden<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Kopierat<\/span><span data-wh-copy-fallback hidden>Koden \u00e4r markerad \u2013 kopiera den<\/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\">F\u00f6r den egentliga m\u00e4tningen, k\u00f6r samma lokala staging-test med skriptet. Filv\u00e4gen g\u00e4ller f\u00f6r en terminal i skriptfilens katalog. \u00c4ven detta k\u00f6rning genererar belastning; dokumentera de tv\u00e5 procentilerna som visas tillsammans med fel och den separat kontrollerade svarskvaliteten. <\/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\">Kopiera koden<\/button><span class=\"wh-copy-status\" aria-live=\"polite\"><\/span><span data-wh-copy-success hidden>Kopierat<\/span><span data-wh-copy-fallback hidden>Koden \u00e4r markerad \u2013 kopiera den<\/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\">Planera en separat <strong style=\"font-weight:700;color:inherit\">Uppv\u00e4rmningsfas<\/strong> innan du dokumenterar sj\u00e4lva m\u00e4tningarna. Upprepa d\u00e4refter varje fastst\u00e4lld belastningsniv\u00e5 och variera om m\u00f6jligt ordningen p\u00e5 j\u00e4mf\u00f6relsesystemen. Notera hur l\u00e4nge uppv\u00e4rmningen p\u00e5gick och om cachen befann sig i \u00f6nskat tillst\u00e5nd vid m\u00e4tningens b\u00f6rjan.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">\u00d6ka antalet anslutningar endast inom de \u00f6verenskomna gr\u00e4nserna och kontrollera avbrottskriterierna efter varje steg. H\u00e5ll \u00e4ven koll p\u00e5 belastningsgeneratorn: om den sj\u00e4lv \u00e4r fullt utnyttjad kan den begr\u00e4nsa resultatet. Kontrollera dessutom statuskoder och svarens inneh\u00e5ll; en snabbt levererad felsida eller ett felaktigt svar r\u00e4knas inte som en lyckad applikationsf\u00f6rfr\u00e5gan.<\/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\">Dokumentera belastningsniv\u00e5er och resultat<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ett m\u00e4tprotokoll kopplar samman siffrorna med de f\u00f6rh\u00e5llanden under vilka de uppkom. Notera f\u00f6r varje k\u00f6rning omgivningen, slutpunkten, cache-statusen och belastningsniv\u00e5n tillsammans med resultaten. F\u00f6ljande tabell anv\u00e4nder bland annat v\u00e4rden som tillhandah\u00e5lls av wrk respektive FPM-statussidan; du m\u00e5ste sj\u00e4lv komplettera med en inneh\u00e5llsm\u00e4ssig kontroll av svaren.  <\/p>\n<div class=\"wh-table-scroll\" tabindex=\"0\" role=\"region\" aria-label=\"M\u00e4tprotokoll f\u00f6r en HTTP-k\u00f6rning\" 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\u00e4tprotokoll f\u00f6r en HTTP-k\u00f6rning<\/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\">F\u00e4lt<\/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\">Vad som dokumenteras<\/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\">Omgivningar<\/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 webbhotellspaket, PHP- och 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\">Arbetsbelastning och 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\">Rutt, testdata, svarskontroll och 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\">Laststeg<\/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\">Belastningsmodell, anslutningsantal eller f\u00f6rutbest\u00e4md f\u00f6rfr\u00e5gningsfrekvens, varaktighet och uppv\u00e4rmningsfas<\/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\">Framg\u00e5ngsrika f\u00f6rfr\u00e5gningar<\/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\">R\u00e4tta svar per sekund; kontrollera statuskoder och inneh\u00e5ll 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\">F\u00f6rdr\u00f6jning<\/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\">Medianv\u00e4rde och p95 f\u00f6r samma k\u00f6rning; vid wrk ska dessa v\u00e4rden matas ut via det visade Lua-skriptet<\/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\">Fel<\/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\">Felmeddelanden och tidsgr\u00e4nser<\/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\">Information om resurser<\/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-utnyttjande och, i den m\u00e5n det \u00e4r tillg\u00e4ngligt, FPM-processstatus och k\u00f6<\/td><\/tr><\/tbody><\/table><\/div><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Medianv\u00e4rdet beskriver mitten av de observerade svarstiderna. Det <strong style=\"font-weight:700;color:inherit\">p95<\/strong> \u00e4r det v\u00e4rde som 95 procent av de uppm\u00e4tta svaren inte \u00f6verskrider. Tillsammans visar dessa tv\u00e5 storheter om \u00e4ven den l\u00e5ngsammare delen av f\u00f6rdelningen f\u00f6r\u00e4ndras, ut\u00f6ver en typisk f\u00f6rfr\u00e5gan. Tolka dem alltid tillsammans med fel och timeouts.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Skillnaden mellan ett fast antal anslutningar och en f\u00f6rutbest\u00e4md f\u00f6rfr\u00e5gningsfrekvens. Vid ett anslutningsbaserat test, som i exemplet, kan l\u00e5ngsamma svar leda till att f\u00e4rre nya f\u00f6rfr\u00e5gningar per sekund genereras via samma anslutningar. Den uppm\u00e4tta latensen beskriver d\u00e5 inte utan vidare beteendet vid en of\u00f6r\u00e4ndrat h\u00f6g ankomstfrekvens. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">J\u00e4mf\u00f6r d\u00e4rf\u00f6r endast tillr\u00e4ckligt likartade belastningspunkter: samma rutt och svarskontroll, j\u00e4mf\u00f6rbara cache-tillst\u00e5nd samt samma belastningsmodell och samma belastningsniv\u00e5. Ett l\u00e5gt p95-v\u00e4rde vid l\u00e5g parallellitet \u00e4r inte direkt j\u00e4mf\u00f6rbart med ett p95-v\u00e4rde under \u00f6verbelastning. Rapportera flera k\u00f6rningar och deras spridning, ist\u00e4llet f\u00f6r att ange ett enda gynnsamt v\u00e4rde 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\u00f6ka FPM och resursbegr\u00e4nsningar<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Om b\u00e5de k\u00f6et och p95-svarstiden \u00f6kar n\u00e4r belastningen \u00f6kar, \u00e4r det v\u00e4rt att titta p\u00e5 PHP-FPM-poolen. J\u00e4mf\u00f6r de aktuella v\u00e4rdena f\u00f6r <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> och <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 konfigurerade \u00f6vre gr\u00e4nsen <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>. Om alla till\u00e5tna processer \u00e4r aktiva, inga \u00e4r lediga och f\u00f6rfr\u00e5gningar st\u00e5r i k\u00f6, tyder det p\u00e5 en <strong style=\"font-weight:700;color:inherit\">Poolgr\u00e4ns<\/strong> eller arbetare som varit sysselsatta under l\u00e5ng tid, men inte automatiskt p\u00e5 en f\u00f6r l\u00e5ngsam processor.  <\/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-genererad illustration av skivor som v\u00e4ntar framf\u00f6r begr\u00e4nsade \u00f6ppningar i en processpool\" 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-genererad illustration: Upptagna processer kan orsaka v\u00e4ntande f\u00f6rfr\u00e5gningar utan att det g\u00e5r att bevisa att CPU:n \u00e4r orsaken.<\/figcaption><\/figure><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Annonsen <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> D\u00e4remot visar detta att processgr\u00e4nsen n\u00e5tts tidigare sedan poolen startades. Detta i sig bevisar varken att det f\u00f6r n\u00e4rvarande finns en k\u00f6 eller att alla befintliga processer just nu \u00e4r upptagna. P\u00e5 samma s\u00e4tt inneb\u00e4r det maximala antalet befintliga processer inte att alla \u00e4r aktiva. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Arbetare kan ocks\u00e5 v\u00e4nta p\u00e5 databasfr\u00e5gor eller andra externa tj\u00e4nster. J\u00e4mf\u00f6r d\u00e4rf\u00f6r poolstatus och CPU-utnyttjande med de observerade svarstiderna: En full k\u00f6 vid l\u00e5gt CPU-utnyttjande tyder p\u00e5 att man f\u00f6rst b\u00f6r unders\u00f6ka v\u00e4ntetiderna och arbetarnas bel\u00e4ggning. Ett st\u00f6rre antal pooler \u00e4r inte automatiskt l\u00f6sningen, eftersom ytterligare processer ocks\u00e5 kr\u00e4ver resurser.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">FPM-statusv\u00e4rdena g\u00e4ller f\u00f6r respektive pool; r\u00e4knarna nollst\u00e4lls vid en omstart. Notera d\u00e4rf\u00f6r poolen och tidpunkten f\u00f6r omstarten i m\u00e4tprotokollet och j\u00e4mf\u00f6r r\u00e4knarst\u00e4llningarna endast inom en l\u00e4mplig tidsperiod. Skydda en aktiverad statussida mot obeh\u00f6rig \u00e5tkomst, eftersom den avsl\u00f6jar driftsinformation om poolen. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">N\u00e4r det g\u00e4ller VPS och delad hosting inneb\u00e4r en tilldelad vCPU inte n\u00f6dv\u00e4ndigtvis en exklusiv fysisk k\u00e4rna. D\u00e4r cgroup-v2-data \u00e4r tillg\u00e4ngliga visar <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 konfigurerade begr\u00e4nsningen av CPU-bandbredden; <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 bland annat anv\u00e4ndas som r\u00e4knare f\u00f6r <strong style=\"font-weight:700;color:inherit\">Strypning<\/strong> ing\u00e5r. \u00c4ndringar av dessa r\u00e4knare under en k\u00f6rning underl\u00e4ttar diagnostiseringen av en effektiv begr\u00e4nsning. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Kontrollera om m\u00f6jligt \u00e4ven \u00f6verordnade cgroups: En gr\u00e4ns som har st\u00e4llts in d\u00e4r kan p\u00e5verka den tillg\u00e4ngliga ber\u00e4kningstiden, \u00e4ven om den direkt synliga konfigurationen verkar gener\u00f6s. Inte alla r\u00e4knare \u00e5terspeglar \u00e4rvda begr\u00e4nsningar fullt ut. Om denna information saknas i webbhotellspaketet ing\u00e5r den begr\u00e4nsade synligheten uttryckligen i utv\u00e4rderingens begr\u00e4nsningar. <\/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\">Uppt\u00e4cka spridning och felm\u00e4tningar<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Ett enskilt test kan ge en slumpm\u00e4ssigt gynnsam eller ogynnsam bild. Upprepa samma belastningsniv\u00e5er vid dokumenterade tidpunkter och variera om m\u00f6jligt ordningen p\u00e5 j\u00e4mf\u00f6relsesystemen. S\u00e4rskilt n\u00e4r det g\u00e4ller delade resurser kan den tillg\u00e4ngliga prestandan variera; redovisa d\u00e4rf\u00f6r, f\u00f6rutom ett typiskt resultat, \u00e4ven den observerade <strong style=\"font-weight:700;color:inherit\">spridning<\/strong> och antalet lopp.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Se till att k\u00f6rningarna anv\u00e4nder samma cache-tillst\u00e5nd och samma datam\u00e4ngd. En k\u00f6rning med varm sid- eller databascache \u00e4r inte direkt j\u00e4mf\u00f6rbar med en kall k\u00f6rning. Om ett till synes snabbare svar helt och h\u00e5llet h\u00e4rr\u00f6r fr\u00e5n en sidcache s\u00e4ger det inte mycket om hur snabbt PHP utf\u00f6r det dynamiska arbetet.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">En CLI-mikrobenchmark \u00e4r inte heller ett FPM-resultat: den k\u00f6rs i ett annat k\u00f6rningssammanhang och kan anv\u00e4nda andra OPcache- eller JIT-inst\u00e4llningar. Dokumentera de faktiskt aktiva inst\u00e4llningarna f\u00f6r b\u00e5da k\u00f6rmilj\u00f6erna separat, ist\u00e4llet f\u00f6r att h\u00e4rleda dem fr\u00e5n PHP-versionen. En f\u00f6rdel i mikrotestet beh\u00f6ver inte visa sig i samma utstr\u00e4ckning i applikationens HTTP-test. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">R\u00e4kna endast med inneh\u00e5llsm\u00e4ssigt korrekta, framg\u00e5ngsrika svar i den framg\u00e5ngsrika genomstr\u00f6mningen. Annars kan snabba felsidor eller timeouts snedvrida j\u00e4mf\u00f6relsen avsev\u00e4rt. Vid p\u00e5fallande avvikelser b\u00f6r du \u00e4ven kontrollera v\u00e4ntetider i databasen, \u00e4ndringar i cachen och synliga resursbegr\u00e4nsningar innan du enbart tillskriver skillnaden till CPU:n.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Das <strong style=\"font-weight:700;color:inherit\">Takts\u00e4ttning<\/strong> kan ocks\u00e5 bidra till spridningen. Vilken frekvensreglering som \u00e4r l\u00e4mplig beror p\u00e5 plattformen och belastningen; en generel inst\u00e4llning ers\u00e4tter inte en j\u00e4mf\u00f6relse under samma f\u00f6rh\u00e5llanden. Bidraget till <a href=\"https:\/\/webhosting.de\/sv\/cpu-regulatorns-inverkan-pa-vaerdserverns-prestanda\/\">CPU-regulator p\u00e5 webbhotellsservrar<\/a> f\u00f6rklarar sambanden f\u00f6r en f\u00f6rdjupad granskning.<\/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\">Anv\u00e4nda resultaten vid valet av webbhotell<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">F\u00f6r f\u00f6rfr\u00e5gningar som huvudsakligen inneb\u00e4r en stor belastning p\u00e5 CPU:n \u00e4r <strong style=\"font-weight:700;color:inherit\">Tid per arbetsenhet<\/strong> ett viktigt urvalskriterium. J\u00e4mf\u00f6r d\u00e4rf\u00f6r en representativ PHP-funktion med dokumenterad k\u00f6rtid och kontrollera sedan om f\u00f6rdelen ocks\u00e5 visar sig vid den dynamiska HTTP-rutten. En mikrobenchmark beskriver inledningsvis endast den testade koden, inte hela webbhotellstj\u00e4nsten. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Om du f\u00f6rv\u00e4ntar dig m\u00e5nga samtidiga bes\u00f6kare r\u00e4cker det inte med en snabb enskild f\u00f6rfr\u00e5gan. Det \u00e4r dessutom avg\u00f6rande hur m\u00e5nga korrekta svar per sekund systemet levererar vid en fastst\u00e4lld belastningsniv\u00e5 och hur p95-latensen utvecklas inom det accepterade felintervallet. Ett system med h\u00f6gre genomstr\u00f6mning \u00e4r inte automatiskt b\u00e4ttre f\u00f6r ditt projekt om dess l\u00e5ngsamma svar \u00f6verskrider kraven.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Vid databas- eller cacheberoende applikationer b\u00f6r du viktiga <strong style=\"font-weight:700;color:inherit\">Anv\u00e4ndningstest<\/strong> mer \u00e4n ett CPU-resultat. En typisk rutt med j\u00e4mf\u00f6rbara data visar hur samspelet i stacken fungerar under de valda f\u00f6rh\u00e5llandena. Ett SPEC-resultat kan komplettera urvalet, men beskriver ett testat system och ers\u00e4tter inte ett PHP-webbhotellstest. <\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Best\u00e4m innan du g\u00f6r ditt val vilka svarstider, felfrekvenser och belastningsniv\u00e5er som \u00e4r acceptabla f\u00f6r applikationen. J\u00e4mf\u00f6r d\u00e4refter endast resultat med l\u00e4mplig belastningsmodell och j\u00e4mf\u00f6rbart cache-tillst\u00e5nd. Olika hostingpaket ska du utv\u00e4rdera som helhetskonfigurationer; utifr\u00e5n skillnaden mellan dem g\u00e5r det inte att urskilja CPU:ns andel utan ytterligare diagnostik.<\/p>\n<p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Beslutet g\u00e4ller den uppm\u00e4tta niv\u00e5n, inte varje senare version av applikationen eller varje trafiktopp. Upprepa de relevanta testerna efter v\u00e4sentliga \u00e4ndringar av PHP, applikationen, databasen, cachen eller resursbegr\u00e4nsningarna. P\u00e5 s\u00e5 s\u00e4tt kan du se om de reserver som tidigare var tillr\u00e4ckliga fortfarande finns kvar under de nya f\u00f6rh\u00e5llandena.<\/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\">K\u00e4llor och aktuell kunskapsniv\u00e5<\/h2><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Forskningsl\u00e4get: <time datetime=\"2026-11-04\">2026-11-04<\/time><\/p><p style=\"margin:0 0 1.1em;font-size:inherit;line-height:inherit\">Forsknings- och k\u00e4llstatus: 4 november 2026. SPEC CPU 2017 och CPU 2026 \u00e4r separata testpaket; resultaten g\u00e4ller f\u00f6r det testade systemet och de dokumenterade f\u00f6rh\u00e5llandena.<\/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>Ett CPU-resultat i sig visar inte hur snabbt en PHP-applikation reagerar i den dagliga driften av webbhotellet. Artikeln f\u00f6rklarar mikrob\u00e4nkmarker, HTTP-belastningstester och diagnostik av FPM- och resursbegr\u00e4nsningar.<\/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\/sv\/wp-json\/wp\/v2\/posts\/22208","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/comments?post=22208"}],"version-history":[{"count":3,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/posts\/22208\/revisions"}],"predecessor-version":[{"id":22214,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/posts\/22208\/revisions\/22214"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/media\/22211"}],"wp:attachment":[{"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/media?parent=22208"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/categories?post=22208"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webhosting.de\/sv\/wp-json\/wp\/v2\/tags?post=22208"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}