Skip to content
This repository has been archived by the owner on Dec 20, 2021. It is now read-only.

honeycombio/leakybucket

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

leakybucket

OSS Lifecycle

STATUS: this project has been archived. See https://github.com/honeycombio/home/blob/main/honeycomb-oss-lifecycle-and-practices.md

leakybucket is a go library for implementing rate limits using the leaky bucket algorithm

The rate limit is expressed in terms of a throughput and burst limit - over time the average throughput can't exceed the throughput limit, but in any given time period, traffic may be allowed to exceed the throughput limit in bursts.

This type of rate limit is often seen in network - you might buy 1Mb of bandwidth with a 100Mb burst limit. Over the course of time, your average throughput must be below 1Mb, but if you need to temporarily spike above it, it's fine.

Other implementations

There are quite a few leaky bucket implementations out there, each is slightly different. Some of the alternatives written in go:

Contributions and license

Features, bug fixes and other changes are gladly accepted. Please open issues or a pull request with your change.

All contributions will be released under the Apache License 2.0.

About

No description, website, or topics provided.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages