fluent / fluent/fluent-bit

Resiliency: Implement configurable circuit breaker to prevent requests that are likely to fail

Open
#5,077 5 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
C
Stars
8.1k
Forks
2k
Avg merge
4d 16h
Merged PRs (30d)
58

Description

**Is your feature request related to a problem? Please describe.**
Using high rate of retries might overhead in high scale environment. Instead of keep trying to send the request to remote, it would be better to use a circuit breaker pattern to prevent requests that are likely to fail. If upstream keep returns non-2xx response code for a while, why should we keep trying?

**Describe the solution you'd like**
Provide a new circuit breaker configuration. Here is an example implementation in Go: https://github.com/sony/gobreaker

**Describe alternatives you've considered**
`-`

**Additional context**
https://docs.microsoft.com/en-us/azure/architecture/patterns/circuit-breaker

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.