The circuit breaker is an automatic operating switch that turns itself off when there is an overload or short circuit. As well as the electric fuse, the purpose of the circuit breaker is failing quickly and protecting electrical installations. In the case of a microservice, it protects the general integrity of the application.
Imagine the situation where a microservice presents slowness. The requests keep coming, and it begins to be queued. At some point, collateral damage happens. Especially in the case of a microservice that has a dependency on communication with other microservices, we need to apply the circuit breaker.
The concept of the circuit breaker is relatively simple, possessed by only two states:
- On: Releasing the call to the external dependency
- Off: Failing the call immediately and taking a previously configured action
In practice, instead of microservices...