MCPcopy
hub / github.com/eapache/go-resiliency

github.com/eapache/go-resiliency @v1.7.0 sqlite

repository ↗ · DeepWiki ↗ · release v1.7.0 ↗
100 symbols 327 edges 14 files 38 documented · 38%
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.

Extension points exported contracts — how you extend this code

Classifier (Interface)
Classifier is the interface implemented by anything that can classify Errors for a Retrier. [1 implementers]
retrier/classifier.go

Core symbols most depended-on inside this repo

GetState
called by 14
breaker/breaker.go
New
called by 12
retrier/retrier.go
Run
called by 12
breaker/breaker.go
Go
called by 9
breaker/breaker.go
Acquire
called by 8
semaphore/semaphore.go
New
called by 8
batcher/batcher.go
Run
called by 8
batcher/batcher.go
Classify
called by 7
retrier/classifier.go

Shape

Function 54
Method 33
Struct 8
TypeAlias 4
Interface 1

Languages

Go100%

Modules by API surface

retrier/retrier_test.go14 symbols
breaker/breaker.go12 symbols
retrier/retrier.go10 symbols
retrier/classifier.go9 symbols
batcher/batcher_test.go9 symbols
batcher/batcher.go9 symbols
breaker/breaker_test.go8 symbols
retrier/classifier_test.go6 symbols
semaphore/semaphore.go5 symbols
deadline/deadline_test.go5 symbols
semaphore/semaphore_test.go4 symbols
retrier/backoffs_test.go3 symbols

For agents

$ claude mcp add go-resiliency \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact