A ceiling on retries across every call that shares it, so a dependency that
is failing does not get several times its usual traffic.
attempts: 3 bounds one call. It cannot see that every other caller is also
on its third attempt, which is how a struggling dependency ends up with
three times the load at the moment it can least take it. A budget is the
part that sees the total, so it is an object you construct and share, like a
breaker.
It counts rather than measures time: no clock, no timer, nothing to drift.
A ceiling on retries across every call that shares it, so a dependency that is failing does not get several times its usual traffic.
attempts: 3bounds one call. It cannot see that every other caller is also on its third attempt, which is how a struggling dependency ends up with three times the load at the moment it can least take it. A budget is the part that sees the total, so it is an object you construct and share, like a breaker.It counts rather than measures time: no clock, no timer, nothing to drift.