Продвинутый
Что такое паттерн Circuit Breaker (Предохранитель) и как он спасает систему?
Circuit Breaker защищает систему от каскадных сбоев.
Если Сервис А вызывает Сервис Б, а тот "лежит" и отвечает по таймауту (30 сек), Сервис А быстро исчерпает свои потоки в ожидании и тоже упадет.
Как работает предохранитель:
1. Closed (Закрыт): Запросы идут нормально.
2. Open (Открыт): Если % ошибок превысил порог, предохранитель "перегорает". Запросы к Сервису Б больше не идут, Сервис А сразу отдает фоллбэк (ошибку или кэш), не дожидаясь таймаута.
3. Half-Open (Полуоткрыт): Через время пропускается один тестовый запрос. Если он успешен — цепь закрывается. Если нет — снова открывается.