Как не создать retry storm?

Middle+
87 просмотров
AFK Offer AI

Retry storm — каскад ретраев перегружающий систему. Защита: exponential backoff с jitter (рандомизация), retry budget (лимит % ретраев), circuit breaker (прекратить запросы к упавшему сервису), deadline propagation (не ретраить если дедлайн истёк). Не ретраить на 4xx (кроме 429). Ограничить число попыток. Мониторить retry rate — если растёт, что-то не так. В Go — cenkalti/backoff с контекстом.

Следующий вопрос

Как оптимизировать struct layout для кэша?