Выбор ответа Senior Производительность и профилирование обновлено

Усиление хвоста задержек

Вопрос

Страница делает параллельно 50 вызовов к бэкендам, каждый вызов медленный в 1% случаев. Примерно какая доля загрузок страницы будет медленной?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Около 40%. Страница быстрая, только если все 50 вызовов быстрые: 0.99^50 ≈ 0.605.

Варианты ответа

  1. Около 1%
  2. Около 50%
  3. Около 99%
  4. Около 40%правильный ответ

Разбор

Страница быстрая, только если все 50 вызовов быстрые: 0.99^50 ≈ 0.605. Значит, хотя бы один медленный вызов будет примерно в 39.5% загрузок. Поэтому для систем с разветвлением важен хвост каждого бэкенда, и применяют хеджированные запросы и жёсткие дедлайны. 1% неверно: вероятности не складываются так просто, 50% и 99% сильно завышены.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.