Grafana Dskit
This library contains utilities that are useful for building distributed
services, including:
- Exponential backoff for retries.
- A common cache API, implemented for Memcached and Redis.
- Hedging, sending extra duplicate requests to improve the chance that one succeeds.
- A common key-value API, implemented for Consul, Etcd and Memberlist.
- RPC middlewares, for metrics, logging, etc.
- A services model, to manage start-up and shut-down.
Current state
This library is used at scale in production at Grafana Labs.
A number of packages were collected here from database-related projects:
Go version compatibility
This library aims to support at least the two latest Go minor releases.
Contributing
If you're interested in contributing to this project:
License
Apache 2.0 License