Продвинутый
Что такое паттерн Retry (Повторная попытка) и когда он опасен?
Retry — это автоматический повтор запроса при получении ошибки от соседнего сервиса (например, 503 Service Unavailable или таймаут).
✅ Когда полезен: При кратковременных сетевых морганиях (Transient faults).
❌ Когда опасен (Retry Storm):
Если Сервис Б "лежит" от перегрузки, а 10 других сервисов начнут яростно ретраить запросы к нему, они устроят ему DDoS-атаку и окончательно добьют.
Решение: Использовать Exponential Backoff (увеличение паузы) и Jitter (случайный разброс).
⚠️ Важно: Ретраи можно делать только для идемпотентных методов (GET, PUT), иначе можно дважды списать деньги (POST).