Zum Inhalt springen
SDETRole
SDETRole

Glossar · Performance

Perzentil-Latenz

Englisch: Percentile latency

Auch genannt: p95, p99, Latenz-Perzentil, Perzentile

Definition

Ein Antwortzeitmaß wie p95 oder p99, das angibt, innerhalb welcher Zeit dieser Anteil der Anfragen abgeschlossen war, und so den langsamen Ausläufer sichtbar macht.

Die Perzentil-Latenz beschreibt Antwortzeiten nach Rang statt nach Durchschnitt. Das p95 ist der Wert, den 95 % der Anfragen erreicht oder unterschritten haben; nur die langsamsten 5 % dauerten länger. p50 ist der Median, also die typische Erfahrung. p99 und p99.9 beschreiben den Ausläufer (Tail): die langsamsten Anfragen, die Nutzer oft bemerken und über die sie sich beschweren.

Warum Perzentile besser sind als Durchschnittswerte

Nehmen Sie 100 Anfragen: 90 dauern 100 ms und 10 dauern 2.000 ms.

Kennzahl Wert
Durchschnitt 290 ms
p50 (Median) 100 ms
p95 2.000 ms
p99 2.000 ms

Der Durchschnitt von 290 ms beschreibt keine einzige Anfrage, die tatsächlich stattgefunden hat. Er wirkt akzeptabel, und doch hat jeder zehnte Nutzer zwei Sekunden gewartet. Die Perzentile zeigen beide Fakten: Die meisten Anfragen sind schnell, und der Ausläufer ist sehr langsam. Durchschnittswerte werden zudem von wenigen extremen Ausreißern verzerrt, der Median nicht.

Der Ausläufer ist wichtiger, als es scheint. Ein einzelner Seitenaufruf löst oft viele Backend-Aufrufe aus, und eine Nutzersitzung umfasst viele Seitenaufrufe. Ein großer Teil der Nutzer trifft daher während eines Besuchs auf mindestens eine Anfrage, die so langsam ist wie das p99.

Perzentile in Tests verwenden

Performanceziele und Gates sollten als Perzentile formuliert werden. In k6:

export const options = {
  thresholds: {
    http_req_duration: ['p(50)<200', 'p(95)<500', 'p(99)<1500'],
  },
};

Berichten Sie mehrere Perzentile gemeinsam (p50, p95, p99, Maximum), zusammen mit Durchsatz und Fehlerrate, denn jede Kennzahl erzählt einen anderen Teil der Geschichte.

Häufige Fehler

  • Perzentile mitteln. Der Mittelwert der p95-Werte von zehn Servern ist nicht das Gesamt-p95. Perzentile müssen aus den zusammengeführten Rohdaten oder aus zusammenführbaren Histogrammen berechnet werden.
  • Zu wenige Messwerte. Ein p99 aus 200 Anfragen beruht auf zwei Datenpunkten. Lassen Sie den Test lange genug laufen, um aussagekräftige Mengen im Ausläufer zu haben.
  • Fehler ignorieren. Eine Anfrage, die nach 5 ms schnell fehlschlägt, kann die Latenz besser aussehen lassen. Lesen Sie die Latenz immer zusammen mit der Fehlerrate.
  • Coordinated Omission. Ein Lasttool, das auf jede langsame Antwort wartet, bevor es die nächste Anfrage sendet, schickt während Verlangsamungen unbemerkt weniger Anfragen und unterschätzt dadurch die Tail-Latenz. Lasterzeugung nach Ankunftsrate (offenes Modell) verringert dieses Problem.

Tippen Sie, um SDETRole zu durchsuchen.

Volltextsuche mit Pagefind · läuft in Ihrem Browser Suchseite öffnen →