Resilience patterns на собеседовании системного аналитика

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Карьерник — Duolingo для аналитиков: 10 минут в день тренируй SQL, Python, A/B, статистику, метрики и ещё 3 темы собеса. 1500+ вопросов в Telegram-боте. Бесплатно.

Полная стека resilience

Request → Bulkhead (resource isolation)
       → Circuit Breaker (fail fast)
       → Timeout (bounded wait)
       → Retry с backoff (transient errors)
       → Downstream call.

Each pattern handles different failure mode.

Order matters

Outer. Bulkhead first — limits total in-flight.

Then CB — fail fast если service unhealthy.

Then timeout — bounded wait per attempt.

Then retry — transient errors.

Inside. Actual call.

[Bulkhead] [CB] [Retry] [Timeout] -- call

Reverse — issues. CB outside retry — CB sees retries как separate failures, opens needlessly.

Timeout placement

Per-attempt timeout. Каждый retry ограничен.

Total budget: 5s.
Retries: 3.
Per attempt: ~1.5s (with backoff между retries).

Total timeout. Hard cap на whole operation.

Готовься к собесу аналитика как в Duolingo
10 минут в день — SQL, Python, A/B, метрики. 1700+ вопросов в Telegram
Открыть Карьерник в Telegram

Failure modes

Transient. Network blip — retry helps.

Persistent. Server down — CB opens, не retry endlessly.

Slow. Timeout — abort.

Cascading. Bulkhead — isolate downstream failure.

Overload. Backpressure / rate limiting — protect.

Each pattern targets specific.

Связанные темы

FAQ

Это официальная информация?

Нет. Статья основана на Resilience4j docs, Michael Nygard «Release It!».


Тренируйте системный анализ — откройте тренажёр с 1500+ вопросами для собесов.