State

sealed class State(source)

The initial state when initializing a CircuitBreaker is Closed.

The available states are:

  • Closed in case tasks are allowed to go through

  • Open in case the circuit breaker is active and rejects incoming tasks

  • HalfOpen in case a reset attempt was triggered, and it is waiting for the result in order to evolve in Closed, or back to Open

Inheritors

Types

Link copied to clipboard

Closed is the normal state of the CircuitBreaker, where requests are being made. The state in which CircuitBreaker starts. - When an exception occurs it increments the failure counter - A successful request will reset the failure counter to zero - When the failure counter reaches the maxFailures threshold, the breaker is tripped into the Open state

Link copied to clipboard

The CircuitBreaker is in HalfOpen state while it's allowing a test request to go through.

Link copied to clipboard

When the CircuitBreaker is in the Open state it will short-circuit/fail-fast all requests - All requests short-circuit/fail-fast with ExecutionRejected - If a request is made after the configured resetTimeout passes, the CircuitBreaker is tripped into the a HalfOpen state, allowing one request to go through as a test.

Properties

Link copied to clipboard