Clone this repo:
  1. 2146c93 add module definition; fix #75 by Cenk Alti · 5 years ago master v2.2.0
  2. 1e4cf3d reuse timer in Retry func by Cenk Alti · 6 years ago v2.1.1
  3. 62661b4 honor context deadlines, fix #53 (#64) by Cenk Altı · 6 years ago v2.1.0
  4. adb73d5 Removing new random source due to high memory cost. by Harry Pidcock · 6 years ago
  5. b7325b0 Update docs to match code by Phil Sorber · 6 years ago

Exponential Backoff GoDoc Build Status Coverage Status

This is a Go port of the exponential backoff algorithm from Google's HTTP Client Library for Java.

Exponential backoff is an algorithm that uses feedback to multiplicatively decrease the rate of some process, in order to gradually find an acceptable rate. The retries exponentially increase and stop increasing when a certain threshold is met.




  • I would like to keep this library as small as possible.
  • Please don't send a PR without opening an issue and discussing it first.
  • If proposed change is not a common use case, I will probably not accept it.