Что показывает 95-й процентиль
95-й процентиль, или p95, — такое время отклика, которое не превышают 95 % запросов из выборки. Остальные 5 % занимают больше времени. Это граница «хвоста» распределения, где живут самые медленные ответы.
Медиана (p50) показывает типичный запрос: половина быстрее, половина медленнее. Разрыв между p50 и p95 говорит о разбросе: чем он больше, тем неравномернее работает сервис.
Как найти p95 вручную
Отсортируйте замеры по возрастанию и пронумеруйте с нуля. Позиция процентиля равна p/100 × (n − 1). Если она получилась дробной, берут два соседних значения и находят число между ними пропорционально дробной части.
Для десяти замеров позиция p95 равна 0,95 × 9 = 8,55. Это между девятым значением (160 мс) и десятым (480 мс): 160 + 0,55 × 320 = 336 мс. Медиана тех же замеров — 136,5 мс.
Пример: среднее против процентиля
В примере по умолчанию девять запросов уложились в 118–160 мс, а один занял 480 мс. Среднее равно 170,3 мс и не вызывает тревоги, а p95 составляет 336 мс, то есть почти вдвое больше.
Если сервис должен отвечать быстрее некоторого порога для подавляющего большинства пользователей, сравнивать нужно именно процентиль с этим порогом, а не среднее.
Размер выборки и устойчивость результата
Чем выше процентиль, тем больше замеров нужно. По десяти значениям p99 равен 451,2 мс и почти совпадает с максимумом 480 мс: единственный выброс определяет весь результат.
Для устойчивого p99 собирайте сотни и тысячи замеров за сопоставимый период. Не смешивайте разные конечные точки, дни недели и условия нагрузки в одном списке.
Почему в разных системах p95 отличается
Существует несколько способов определить процентиль. Калькулятор использует линейную интерполяцию, как функция PERCENTILE.INC электронных таблиц. Метод ближайшего ранга для тех же десяти замеров дал бы 480 мс.
Системы мониторинга часто считают процентили по гистограммам с корзинами, а не по исходным замерам, и тоже дают приближённые значения. Сравнивайте числа только при одинаковом методе.
Типичные ошибки
Частая ошибка — усреднять процентили разных серверов: среднее двух p95 не равно p95 объединённых данных. Другая — смешивать секунды и миллисекунды в одном списке.
Ещё одна ловушка — выбрасывать медленные замеры как «шум». Именно они и определяют высокий процентиль, и убирать их без причины значит приукрашивать результат. Фиксируйте окно наблюдения и версию сервиса вместе с результатом, иначе через месяц сравнить числа будет не с чем.
Границы применения
Калькулятор считает процентиль по введённым вами значениям и ничего не знает о причинах задержек, нагрузке и архитектуре. Он не заменяет мониторинг и профилирование.
Пороговые значения для вашего сервиса задаёт команда или договор об уровне обслуживания, а не эта страница: она показывает только, как устроена статистика замеров.
Формула расчёта
z = p/100 × (n − 1); x = x[⌊z⌋] + (x[⌊z⌋+1] − x[⌊z⌋]) × (z − ⌊z⌋)
Проверенные примеры
Замеры, мс: 120, 135, 118, 142, 160, 155, 130, 480, 125, 138. Каков 95-й процентиль?
Сортируем: 118, 120, 125, 130, 135, 138, 142, 155, 160, 480. Позиция z = 0,95 × 9 = 8,55, поэтому p95 = 160 + 0,55 × (480 − 160) = 336 мс.
Какова медиана (p50) этого ряда?
z = 0,5 × 9 = 4,5, значит p50 = (135 + 138) ÷ 2 = 136,5 мс.
Как пользоваться онлайн-калькулятором
- Введите замеры времени отклика в миллисекундах через точку с запятой.
- Укажите процентиль: 50, 95, 99 или другое значение от 0 до 100.
- Нажмите «Вычислить» и получите время, ниже которого укладывается заданная доля замеров.
- Сравните результат с медианой и максимумом и при необходимости пересчитайте для другого окна наблюдения.