TGViewer
Сохранёнки программиста Сохранёнки программиста @prog_stuff · 6.51K subscribers
Post #3075 125
Как Uber ограничивает лавину повторных запросов

Сервис C вернул ошибку. B повторил запрос к C, а после неудачи сообщил об ошибке A. Если A тоже повторит запрос, вся цепочка запустится заново. Даже небольшой лимит ретраев на каждом уровне усиливает нагрузку.

В разборе Uber используется error ownership: инфраструктура сопоставляет входящие и исходящие ошибки, чтобы определить, где сбой возник, а где его только передали дальше.

Если C объявил себя источником ошибки, B может повторить обращение к нему в пределах retry budget. Когда ошибка уходит выше, B снимает признак владения: A уже не должен повторять всю цепочку.

В статье есть схема передачи x-uber-error-claim и обработка сложных случаев: потерянного контекста и совпавших независимых ошибок. Подход требует понимания зависимостей сервисов — одного общего правила «повторять любой 500» для этого недостаточно.

#архитектура #разборы
More from @prog_stuff
  1. Oct 14, 2026Как Cloudflare проверяет выводы ИИ-агентов В первом прототипе агент получал всё расследова…
  2. Oct 14, 2026Post #3073
  3. Oct 14, 2026Почему разработчик планирует отдавать больше задач Claude Винсент Шмальбах описал план пер…
  4. Oct 14, 2026Как leaky bucket ограничивает допуск нагрузки Leaky bucket задаёт вместимость и скорость о…
  5. Oct 13, 2026Почему счёт записывают в TigerBeetle последним, а проверяют первым В техническом разборе с…
  6. Oct 13, 2026Как батчинг меняет производительность OLTP в TigerBeetle Перенос привычной схемы работы с…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →