Sobes.tech
Intern
19

Что такое Circuit Breaker паттерн?

Companies where asked
Т-БанкТ-Банк

Answer from AI

sobes.tech AI

Circuit Breaker — это паттерн проектирования, используемый для повышения устойчивости распределённых систем и предотвращения каскадных сбоев при взаимодействии с ненадёжными внешними сервисами.

Идея в том, что если внешний сервис начинает часто выдавать ошибки или не отвечает, Circuit Breaker "размыкает цепь" и временно блокирует дальнейшие запросы к этому сервису, возвращая заранее определённый ответ или ошибку. Это позволяет системе быстро реагировать на проблемы и не тратить ресурсы на повторные неудачные попытки.

Основные состояния Circuit Breaker:

  • Closed (закрыт): запросы проходят как обычно.
  • Open (открыт): запросы блокируются, возвращается ошибка.
  • Half-Open (полуоткрыт): после таймаута пробуется отправить запрос, чтобы проверить, восстановился ли сервис.

Пример использования: при вызове внешнего API, если за последние N запросов процент ошибок превышает порог, Circuit Breaker открывается и блокирует дальнейшие вызовы на некоторое время.