SYSTEM ATLASЗагрузка материала

Указание времени повторного запроса

Retry-After

Retry-After сообщает клиенту, когда имеет смысл повторить запрос после временной недоступности или ограничения частоты.

Простыми словами

Например, aPI возвращает 429 и Retry-After: 30; приложение показывает таймер и не посылает десять новых запросов. Поэтому заранее определяют границы ожидания и поведение при отказе - иначе один медленный компонент начинает удерживать ресурсы и распространять проблему дальше.

Пример от @Vibeclakr

Пример при разработке

API возвращает 429 и Retry-After: 30; приложение показывает таймер и не посылает десять новых запросов.

Это редакционный пример применения, а не часть определения или доказательство концепции.

Формальное определение

Retry-After сообщает клиенту, когда имеет смысл повторить запрос после временной недоступности или ограничения частоты.

Механизм действия

Ответ содержит дату или число секунд; клиент объединяет это с собственным backoff, jitter и бюджетом повторов.

Пример в работе

Нерабочий подход

Внедрить «Указание времени повторного запроса» как формальную настройку, не проверив сценарий отказа и ограничение: Клиент не обязан следовать заголовку; неверное значение может задержать восстановление.

Системный подход

Применять «Указание времени повторного запроса» только для заявленной цели, проверять поведение на реальном контуре и сохранять наблюдаемый критерий результата.

Ограничения

Клиент не обязан следовать заголовку; неверное значение может задержать восстановление.

Источник

IETF, “HTTP Semantics”, 2022.

Первоисточник