Circuit Breaker¶
A circuit breaker is a general software engineering design pattern used to improve the resilience and stability of distributed systems. It prevents cascading failures by monitoring the calls to external services, like APIs, databases, or microservices. When a service fails repeatedly, the circuit breaker triggers and stops further calls to that service for a predefined period, allowing the target system to recover, and the local one to report the unavailability without running wild on wrong reported values.
After the timeout, it may allow a limited number of test calls to see if the service has recovered.
Related : Feature Flag, Downtime
Related packages : ackintosh/ganesha, prestashop/circuit-breaker, ejsmont-artur/php-circuit-breaker