Какой дистрибутив чаще всего используется для моделирования времени отклика сервера?

16

У меня есть приложение на основе сервлета, в котором я измеряю время, необходимое для выполнения каждого запроса к сервлету. Я уже вычисляю простую статистику, такую ​​как среднее и максимальное; Однако я хотел бы провести более сложный анализ, и я считаю, что мне нужно правильно смоделировать это время отклика.

Конечно, я говорю, что время отклика соответствует некоторому общеизвестному распределению, и есть веские основания полагать, что распределение - это правильная модель. Однако я не знаю, каким должно быть это распределение.

На ум приходят логарифмические и Gamma, и вы можете сделать любой из двух подходящих данных реального времени отклика. У кого-нибудь есть мнение о том, за каким распределением должно следовать время ответа?

Шон Оуэн
источник

Ответы:

17

Лог-нормальное распределение является один я считаю лучшими в описании латентности времени отклика сервера по всей абонентской базе в течение определенного периода времени.

Вы можете увидеть некоторые примеры на метко названном сайте lognormal.com , который занимается измерением времени задержки сайта и т. Д. Я не имею никакого отношения к сайту, за исключением того, что я счастливый пользователь. Вот как выглядит распределение; время ответа (например, загрузка веб-страницы) и количество ответов:

лог-нормальное распределение

Обратите внимание, что на этом графике шкала времени загрузки (ось X) является линейной. Если вы переключите ось X на логарифмическую шкалу, форма распределения будет выглядеть более нормальной (в форме колокольчика) с правой стороны пика.

arielf
источник
Этот PDF действительно выглядит как Fréchet по моему мнению.
usεr11852 говорит восстановить Monic
4

Пример графика.  Смотрите статью для большей глубины.

Мои исследования показывают, что лучшая модель определяется несколькими вещами: 1) Вы обеспокоены телом, хвостом или тем и другим? Если не «оба», моделирование отфильтрованного набора данных может быть более полезным. 2) Вы хотите очень простой или очень точный? т.е. сколько параметров?

Если ответ на 1 был «оба», а 2 - «простой», Парето, кажется, работает лучше всего. В противном случае, если 1 было «телом», а 2 - «простым» - выберите отфильтрованную модель Эрланга. Если 1 был «и то, и другое», а 2 - «точным», вам, вероятно, нужна модель гауссовой смеси для ваших данных в домене журнала - фактически логическое ненормальное соответствие.

В последнее время я занимался этим вопросом и не нашел, чтобы эта тема была достаточно хорошо освещена в общедоступном Интернете, поэтому я просто написал пост в блоге, подробно описывающий мои исследования по этой теме.

Андрей Чарнески
источник
1
Спасибо за график. Исходя из (примерно) трехмодального дистрибутива, который у вас есть, я считаю, что это не простая настройка (для одного сервера). Кажется, у вас есть какое-то промежуточное ПО или серверные части, которые работают медленнее. Это приводит к замедлению общего ответа, когда пользовательский сервер ожидает потенциально кэшированных) внутренних подсистем для ответа. Также не ясно, что представляют оси X и Y. Вы инвертировали время загрузки (первоначально ось X) и счетчики (первоначально ось Y)?
Ариэльф
Спасибо за ваш отзыв! Исходный набор данных был больше похож на эхо-запросы, чем на запросы веб-сервисов, но я полагаю, что тримодальное распределение обусловлено главным образом двумя факторами: 1) основная бимодальная асимметрия обусловлена ​​двумя сетевыми путями, а 2) длинным хвостом Компонент из-за сценариев восстановления после ошибки tcp. Хотя это всего лишь предположение ... мой основной упор был сделан на эмпирическую полезность различных моделей, а не на процесс и теорию. Я не совсем уверен, что вы спрашиваете об инвертированной оси, хотя ... у вас есть примерный график?
Андрей Чарнески
Кроме того, мои извинения на небрежной графике. Ось X - это микросекунды, а ось Y - плотность вероятности. (Да, я знаю ... извините ... см. Тетрадь для воспроизводимой науки.)
Эндрю Чарнески