Основные паттерны отказоустойчивости: timeout, ограниченные retry с backoff и jitter, circuit breaker, bulkhead, резервирование и контролируемая деградация.
Какие паттерны отказоустойчивости знаете?
Основные паттерны отказоустойчивости: timeout, ограниченные retry с backoff и jitter, circuit breaker, bulkhead, резервирование и контролируемая деградация.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Основные паттерны отказоустойчивости: timeout, ограниченные retry с backoff и jitter, circuit breaker, bulkhead, резервирование и контролируемая деградация.
Timeout ограничивает ожидание; retry подходит для временных ошибок и безопасных повторов. Circuit breaker временно прекращает вызовы проблемной зависимости, а bulkhead не даёт одной подсистеме исчерпать все ресурсы.
Для очередей нужны идемпотентные обработчики, лимит повторов и dead-letter очередь; для согласования БД с событиями — outbox. Нельзя бесконечно повторять платёж или создавать заказ без ключа идемпотентности. Выбор паттерна начинается с модели отказа и требуемых SLO, а не с подключения всех механизмов сразу.