Выбор ответа Middle LLM в проде обновлено

Зачем джиттер в ретраях

Вопрос

Зачем к экспоненциальной задержке ретраев добавляют случайный джиттер?

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

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

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

Коротко

Правильный ответ: Чтобы тысячи клиентов после сбоя не повторяли запросы синхронно и не обрушили провайдера. Без джиттера все клиенты, получившие ошибку одновременно, повторят запрос через 1, 2, 4 секунды тоже одновременно: это «громовое стадо».

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

  1. Чтобы запросы разных клиентов выполнялись в случайном порядке и никто не получал приоритет
  2. Чтобы тысячи клиентов после сбоя не повторяли запросы синхронно и не обрушили провайдераправильный ответ
  3. Чтобы снизить стоимость токенов: провайдер даёт скидку на запросы вне пиковых секунд
  4. Чтобы обойти лимит провайдера, распределив запросы между окнами подсчёта rate limit

Разбор

Без джиттера все клиенты, получившие ошибку одновременно, повторят запрос через 1, 2, 4 секунды тоже одновременно: это «громовое стадо». Случайный разброс размазывает нагрузку. К честности порядка и стоимости это не относится. Обходить лимиты провайдера джиттер не помогает и не должен.

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

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