Digitális és informatikai

P95 válaszidő: miért kell az összesített méréshez a minták eloszlása?

Két szerver p95 válaszidejének átlaga általában nem a teljes szolgáltatás p95 értéke. Két pontosan végigszámolt mérési sor mutatja meg az eltérést és az összesítéshez szükséges adatokat.

Dajka Gábor4 perc olvasás
Dajka Gábor portréja sárga háttérrel
Dajka Gábor

Egy szolgáltatás két szervere külön p95 válaszidőt jelent. Kézenfekvőnek tűnik a két érték átlagolása, ez azonban általában más számot ad, mint az összes kérésből meghatározott p95. A percentilis a rendezett mérések egy helyét jellemzi. Az egyes csoportokból kiemelt helyértékek nem őrzik meg a teljes eloszlást.

Tudományos számológép fekete háttér előtt
Illusztráció: Pixabay · Felhasználási feltételek

Az itt szereplő példák szándékosan egyszerűek. Azonos időablakból származó, külön kérések válaszidejét mérjük milliszekundumban, és a nearest-rank, azaz felfelé kerekített sorszám szerinti módszert használjuk. Más percentilisszámítási mód kis mintán eltérő eredményt adhat.

A számítási szabály legyen látható

Először rendezd a válaszidőket növekvő sorrendbe. n darab mérésnél a p95 sorszáma 0,95 × n felfelé kerekítve. A sorszámozás egytől indul. Az ezen a helyen álló mérés a példák p95 értéke.

Húsz mérésnél 0,95 × 20 = 19, tehát a tizenkilencedik értéket választjuk. Ha tizennyolc mérés 100 ms, kettő 1000 ms, a tizenkilencedik mérés 1000 ms. A leglassabb két kérés együtt a minta 10%-a.

A p95 így egy eloszlási határt ad, az átlagos válaszidőt vagy a legnagyobb értéket külön kell számolni. Egyetlen extrém lassú kérés lényeges lehet akkor is, ha a p95 értéket nem módosítja.

Két egyforma méretű mérési csoport

Az A szerver száz kérésének mindegyikéhez 100 ms-os válaszidőt mérünk. B szerver száz kérésének mindegyike 1000 ms. Saját p95 értékük rendre 100 és 1000 ms. A két szám átlaga 550 ms.

Összevonva kétszáz kérésünk van: az első száz rendezett érték 100 ms, a következő száz 1000 ms. A p95 sorszáma 0,95 × 200 = 190, ezen a helyen 1000 ms áll. A teljes szolgáltatás p95 értéke tehát 1000 ms, miközben a két p95 átlaga 550 ms.

A különbséghez nincs mérési hiba vagy eltérő időablak. Maga az összesítési módszer helytelen. A csoportok azonos mintaszáma sem teszi átlagolhatóvá a percentilist.

A mintaszámmal súlyozás sem általános megoldás

Második forgatókönyvben A szerver 1900 darab, egyenként 100 ms-os kérést, B szerver száz darab, egyenként 1000 ms-os kérést teljesít. A saját p95 értékek továbbra is 100 és 1000 ms.

A kétezer mérés összesített p95 sorszáma 0,95 × 2000 = 1900. Ezen a helyen még 100 ms áll, ezért a megadott módszerrel az összesített p95 100 ms. A 100 ms-nál lassabb csoport pontosan 5%-os; ez a példa a választott definíció határhelyzetét is mutatja.

A mintaszámokkal súlyozott p95-átlag (1900 × 100 + 100 × 1000) / 2000 = 145 ms. Ez sem egyezik a 100 ms-os összesített percentilissel. A példában a 145 ms történetesen a teljes átlagos válaszidő, mert mindkét csoport minden eleme azonos; általános eloszlásnál a csoport p95-ökből az átlag sem áll elő.

A százalékkalkulátor a mintaarányok és a kiválasztott sorszám előtti szorzás ellenőrzéséhez adhat általános segítséget. A percentilis meghatározásához a rendezési és kerekítési szabályt külön kell alkalmazni.

Milyen adatot érdemes megőrizni?

Az összesítésről szóló Prometheus-dokumentáció megmutatja, miért korlátozottak a már kiszámított kvantilisek, és hogyan használhatók eloszlási adatok. Az összes kérés nyers méréséből újraszámítható a percentilis. Nagy adatmennyiségnél megfelelően kialakított és összevonható hisztogram is használható, a módszerhez tartozó becslési pontosság figyelembevételével.

A csoportok ugyanazt a mérési mennyiséget és időablakot fedjék le. Egy teljes nap p95 értékét a perces p95 pontok átlagából szintén nem kapjuk meg. Az egyes percek forgalma és a válaszidők eloszlása eltérhet.

Az időtúllépéseket és hibás kéréseket is dokumentáltan kezeld. Ha csak a sikeresen befejezett válaszok kerülnek a mérésbe, a kimaradó lassú hibák kedvezőbb képet mutathatnak. A p95 mellé tedd oda a mintaszámot, a hibaarányt és a mérés pontos jelentését, például szerveroldali feldolgozás vagy teljes kliensoldali várakozás.

Tudáspróba

1. Hányadik rendezett érték a nearest-rank p95 kétszáz mérésnél?

  • A: A századik.
  • B: A százkilencvenedik.
  • C: Az utolsó.

2. Száz 100 ms-os és száz 1000 ms-os kérés összesített p95 értéke mennyi a megadott módszerrel?

  • A: 550 ms.
  • B: 100 ms.
  • C: 1000 ms.

3. Melyik adat alkalmas az összesített percentilis újraszámítására?

  • A: Az összes kérés mérése vagy megfelelő összevonható eloszlási adat.
  • B: Kizárólag a két csoport p95-ének egyszerű átlaga.
  • C: Kizárólag a szerverek száma.

Megoldások és következő lépés

1. B. 0,95 × 200 = 190, így nincs szükség további kerekítésre.

2. C. A százkilencvenedik érték az 1000 ms-os csoportban található.

3. A. Az összesített eloszlás információja szükséges; a két kiemelt percentilis ezt nem őrzi meg.

0–1 pont: rendezd kézzel a húszelemű bevezető példát. 2 pont: vezesd végig a két kétszerveres forgatókönyv sorszámait. 3 pont: ellenőrizd a saját felügyeleti rendszered aggregálását, mintaszámait és a hibás kérések kezelését.

További cikkek

Kapcsolódó olvasnivalók

Gyorskereső

Kalkulátorok és útmutatók keresése

↑↓ választásEnter megnyitásEsc bezárás