Categorygithub.com/eapache/go-resiliency
module
1.7.0
Repository: https://github.com/eapache/go-resiliency.git
Documentation: pkg.go.dev

# README

go-resiliency

Golang CI GoDoc Code of Conduct

Resiliency patterns for golang. Based in part on Hystrix, Semian, and others.

Currently implemented patterns include:

  • circuit-breaker (in the breaker directory)
  • semaphore (in the semaphore directory)
  • deadline/timeout (in the deadline directory)
  • batching (in the batcher directory)
  • retriable (in the retrier directory)

Note: I will occasionally bump the minimum required Golang version without bumping the major version of this package, which violates the official Golang packaging convention around breaking changes. Typically the versions being dropped are multiple years old and long unsupported.

# Packages

Package batcher implements the batching resiliency pattern for Go.
Package breaker implements the circuit-breaker resiliency pattern for Go.
Package deadline implements the deadline (also known as "timeout") resiliency pattern for Go.
Package retrier implements the "retriable" resiliency pattern for Go.
Package semaphore implements the semaphore resiliency pattern for Go.