🖥 Для Python появился Interlock - современный circuit breaker без зоопарка отдельных решений для sync и async.
Один CircuitBreaker умеет работать и с обычными функциями, и с async, считать процент ошибок по скользящему окну и отдельно реагировать на слишком медленные вызовы.
Можно собрать полноценный pipeline отказоустойчивости:
pipeline = (
Pipeline.builder()
.fallback(...)
.retry(attempts=4)
.circuit_breaker(breaker)
.bulkhead(8)
.timeout(2.0)
.build()
)
То есть timeout, retry, ограничение параллелизма, circuit breaker и fallback складываются в одну явную цепочку.
Есть интеграции с httpx, aiohttp, requests, FastAPI, Redis и OpenTelemetry. Через Redis состояние breaker можно шарить между несколькими процессами или инстансами приложения.
Ещё полезная штука - METRICS_ONLY: сначала можно просто посмотреть реальные проценты ошибок и медленных запросов в проде, ничего не блокируя, а уже потом включить breaker.
https://github.com/bagowix/interlock
@Python_Community_ru

August 19, 2026 480 5