Resiliency patterns for golang. Based in part on Hystrix, Semian, and others.
Currently implemented patterns include:
- circuit-breaker (in the 
breakerdirectory) - semaphore (in the 
semaphoredirectory) - deadline/timeout (in the 
deadlinedirectory) - batching (in the 
batcherdirectory) - retriable (in the 
retrierdirectory) 
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.