Exponential backoff implementation extracted from gRPC-Go
gRPC-Go
has really nice exponential backoff implementation, but it is impossible to reuse as it resides
in internal
package, so it can be imported only within gRPC-Go
.
package main
import "github.com/vgarvardt/backoff"
func main() {
retry := 5
waitFor := backoff.DefaultExponential.Backoff(retry)
...
}