Что такое перцентиль в Observability?
Когда мы говорим про observability и метрики, особенно задержку (latency), часто встречаются термины p50, p95, p99. Это и есть перцентили. С их помощью можно понять не только среднее время ответа системы, но и то, как она ведёт себя для большинства пользователей — и для тех, кому повезло меньше.
Простое определение
Перцентиль — это значение, ниже которого укладывается заданный процент измерений.
- p50 — медиана. Половина запросов быстрее, половина медленнее.
- p95 — 95% запросов выполняются не хуже этого времени, 5% — хуже.
- p99 — только 1% запросов хуже этого значения.
Зачем нужны перцентили
Среднее время ответа часто обманывает.
Пример:
- Среднее: 100 мс
- Но p99: 2 секунды
Значит, 1% пользователей сидят и ждут, хотя “в среднем всё хорошо”.
Практический пример
Вы замерили API:
- p50 = 120 мс (обычные запросы быстрые)
- p95 = 600 мс (уже заметные задержки)
- p99 = 2 секунды (редкие, но очень медленные ответы)
Теперь видно, что есть всплески и их надо разбирать.
Перцентили в SRE
В книге Google SRE перцентили — ключевой инструмент:
- SLIs (индикаторы качества) часто строятся через p95/p99.
- SLO и SLA формулируются так: «95% запросов должны укладываться в 300 мс».
Вывод
Перцентили позволяют видеть реальную картину производительности.
Они помогают не обманываться “средним” и понимать, что чувствует большинство пользователей и насколько страдает меньшинство.
✅ В следующий раз, когда смотришь на метрики — смотри не только на среднее, а на p95 и p99. Там скрыта правда.