https://github.com/eapache/go-resiliency
Resiliency patterns for golang
https://github.com/eapache/go-resiliency
go golang resiliency resiliency-patterns
Last synced: 5 days ago
JSON representation
Resiliency patterns for golang
- Host: GitHub
- URL: https://github.com/eapache/go-resiliency
- Owner: eapache
- License: mit
- Created: 2014-11-29T04:11:32.000Z (over 10 years ago)
- Default Branch: main
- Last Pushed: 2025-02-23T20:11:08.000Z (about 2 months ago)
- Last Synced: 2025-03-31T17:58:46.406Z (12 days ago)
- Topics: go, golang, resiliency, resiliency-patterns
- Language: Go
- Homepage: https://godoc.org/github.com/eapache/go-resiliency
- Size: 82 KB
- Stars: 2,277
- Watchers: 28
- Forks: 146
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-go - go-resiliency - Resiliency patterns for golang. (Miscellaneous / Uncategorized)
- zero-alloc-awesome-go - go-resiliency - Resiliency patterns for golang. (Miscellaneous / Uncategorized)
- awesome-golang-repositories - go-resiliency
- awesome-go - go-resiliency - Resiliency patterns for golang - ★ 701 (Miscellaneous)
- awesome-go-extra - go-resiliency - 11-29T04:11:32Z|2022-06-28T01:14:03Z| (Microsoft Office / Uncategorized)
- awesome-go-zh - go-resiliency
- awesome-go - go-resiliency - Resiliency patterns for golang. Stars:`2.3K`. (Miscellaneous / Uncategorized)
README
go-resiliency
=============[](https://github.com/eapache/go-resiliency/actions/workflows/golang-ci.yml)
[](https://godoc.org/github.com/eapache/go-resiliency)
[](https://eapache.github.io/conduct.html)Resiliency patterns for golang.
Based in part on [Hystrix](https://github.com/Netflix/Hystrix),
[Semian](https://github.com/Shopify/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.*