TGViewer
Системный анализ на максималках Системный анализ на максималках @system_analysis_max · 880 subscribers
Post #71 1.21K
Просто о Circuit Breaker 📌

Есть ли у вас друг, который вечно занят и редко соглашается на встречу? Сначала вы активно зовете его на кружку пива, а после нескольких неудачных попыток бросаете это гиблое дело 👀

Но спустя месяц кидаете мем в TG, слово за слово - и вот вы уже сидите в кафе и обмениваетесь новостями 🌾

На примере этой жизненной ситуации можно объяснить Circuit Breaker - паттерн МСА, который частенько стали спрашивать на собесе

🤍 Что такое Circuit Breaker
Circuit Breaker - это предохранитель, который реализуется на клиентской (вызывающей) стороне (на микросервисе или API Gateway)

🤍 Для чего нужен
Временно прерывать поступающие запросы в случае, если невозможно достучаться до другого микросервиса.

Circuit Breaker понимает, что вызываемый сервис лежит, и прерывает последующие запросы, давая возможность восстановиться после нокаута 🤡. Через время делает тестовый вызов - если сервис поднялся, то общение возобновляется

🤍 Принцип работы
🤍Если все в порядке и вызываемый сервис отвечает, то Circuit Breaker находится в состоянии Closed и спокойно пропускает запросы
🤍Если сбои участились, Circuit Breaker переходит в состояние Open и блокирует вызовы
🤍Через время Circuit Breaker переключается на состояние Half Open и делает тестовые запросы, чтобы проверить, исправлен ли сбой

А как Circuit Breaker понимает, что сервис лежит? Все просто - задается некоторый порог сбоев. Если количество неудачных запросов в состоянии Closed превышает порог, на ринг выходит Circuit Breaker. Порог устанавливается в % - например, 50% неудачных запросов из последних 20 запросов

Время ожидания (timeout) в состоянии Open - тоже настраиваемая метрика. Например, 30-60 секунд

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

➡️ Забирайте себе и уверенно отвечайте на собесе

#полезное_системный_анализ
  • 🔥 17
  • ❤ 7
More from @system_analysis_max
  1. Mar 27, 2026Прошел испытательный срок в Альфе 🅰️ Правда, это было 2 месяца назад, но время порефлекси…
  2. Mar 16, 2026Продолжая предыдущий пост Как вы помните, на прошлой неделе объявили о закрытии школы Syst…
  3. Mar 11, 2026Про опыт преподавания Давненько не писал в блог, пора исправляться Последние два месяца вы…
  4. Feb 10, 2026WebSocket на практике 📌 А вы знали, что в Postman можно протестировать не только REST API…
  5. Jan 21, 2026RabbitMQ на практике 📌 Часто ко мне на консультации приходят с запросом отточить какие-ни…
  6. Jan 15, 2026Первый пост в 2026 году Будет очень простым, потому что после выходных я еще не до конца в…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →