Skip to content

Recovering from half-open state based on a success threshold #73

@kevkcc

Description

@kevkcc

Hi, was wondering if there were plans and/or a suggested workaround for recovering from a half-open state based on a success threshold as described in Microsoft's circuit breaker pattern page: https://learn.microsoft.com/en-us/azure/architecture/patterns/circuit-breaker

Currently, the behaviour in cockatiel (as well as opossum) is we have one trial call and if this call succeeds, we recover back into the closed state and if this call fails, we fail back into the open state (0% error rate on 1 call). But maybe we want less than 30% error rate on the next 10 calls for instance.

Resilience4j offers something along these lines with permittedNumberOfCallsInHalfOpenState: https://javadoc.io/static/io.github.resilience4j/resilience4j-circuitbreaker/1.2.0/io/github/resilience4j/circuitbreaker/CircuitBreakerConfig.Builder.html#permittedNumberOfCallsInHalfOpenState-int-

Thanks for creating this great library!

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions