Skip to content

grafana/dskit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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:

Release History

This project uses conventional commit messages to maintain a clear history of changes. No separate changelog is maintained - please refer to the commit history for information about releases and changes.

License

Apache 2.0 License

About

Distributed systems kit

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 152

Languages