Для Python появился Interlock - современный circuit breaker без… — Python Community — TG.ME

🖥 Для 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