Circuit Breaker's Role and Limitations

Circuit Breaker's Role and Limitations An architecture diagram generated by Archify. Circuit Breaker · Failure isolation tool · Architecture component Circuit Breaker Failure isolation tool Isolate Failing Services · Ejection via Outlier Detection · ✅ What Circuit Breaker Does Isolate Failing Services Ejection via Outlier Detection Prevent Cascading Failures · Stop failure propagation · ✅ What Circuit Breaker Does Prevent Cascading Failures Stop failure propagation Protect System Resources · Connection Pool limits · ✅ What Circuit Breaker Does Protect System Resources Connection Pool limits Attempt Auto Recovery · Retry after baseEjectionTime · ✅ What Circuit Breaker Does Attempt Auto Recovery Retry after baseEjectionTime Prevent Duplicate Requests · Cannot stop Retry duplicates · ❌ What Circuit Breaker Does NOT Do Prevent Duplicate Requests Cannot stop Retry duplicates Guarantee Data Consistency · Not guaranteed · ❌ What Circuit Breaker Does NOT Do Guarantee Data Consistency Not guaranteed Transaction Management · Not guaranteed · ❌ What Circuit Breaker Does NOT Do Transaction Management Not guaranteed Idempotency Guarantee · Application-level Idempotency Key · ❌ What Circuit Breaker Does NOT Do Idempotency Guarantee Application-level Idempotency Key Responsible for Not responsible for ✅ What Circuit Breaker Does ❌ What Circuit Breaker Does NOT Do Legend Role (does) Circuit Breaker Limitation (does not)

Core Principle

  • • Circuit Breaker is a tool for failure isolation
  • • It is not a tool for duplicate request prevention or data consistency

Retry + Circuit Breaker Caution

  • • 3 retries on POST + consecutiveErrors 5 allows up to 15 duplicates before it activates
  • • Non-idempotent requests: attempts: 0 or retryOn: connect-failure
  • • Implement an Idempotency Key for critical operations like payment and inventory