A Circuit Breaker is a design pattern that prevents cascading failures in distributed systems by detecting when a service is not responding and stopping requests to it temporarily.
It "trips" the circuit to fallback mode after failures, allowing recovery time.
Use Circuit Breaker when:
Note: Libraries like Resilience4j (Java) or Polly (.NET) simplify implementation.
Combine with health checks and bulkhead patterns for better isolation.
Log circuit state changes for post-mortem analysis.