tukeJonny c3c0b95eab Move TestRetrierCtx to retrier_test.go hace 6 años
..
README.md ed0319b32e Add code-of-conduct badge to READMEs hace 10 años
backoffs.go a5cb3f2b7d Implement the retriable resiliency pattern hace 11 años
backoffs_test.go a5cb3f2b7d Implement the retriable resiliency pattern hace 11 años
classifier.go a5cb3f2b7d Implement the retriable resiliency pattern hace 11 años
classifier_test.go a5cb3f2b7d Implement the retriable resiliency pattern hace 11 años
retrier.go a141741259 Revert "Add build flag for retrier implements" hace 6 años
retrier_test.go c3c0b95eab Move TestRetrierCtx to retrier_test.go hace 6 años

README.md

retrier

Build Status GoDoc Code of Conduct

The retriable resiliency pattern for golang.

Creating a retrier takes two parameters:

  • the times to back-off between retries (and implicitly the number of times to retry)
  • the classifier that determines which errors to retry
r := retrier.New(retrier.ConstantBackoff(3, 100*time.Millisecond), nil)

err := r.Run(func() error {
	// do some work
	return nil
})

if err != nil {
	// handle the case where the work failed three times
}