Does anyone know of a rate limiting lib that limits based on a leaky-bucket algo?
I read how you can use ETS to keep track of usage and refresh the limiter every x minutes, but I want something that will help in terms of smoothening out the usage.
If you only use a counter that refreshes every minute, you can get bursts of usage and then get halted for the remainder of the threshold. A leaky bucket algo will smoothen out the usage over the duration.
There is a go lib that I used that is pretty cool, it basically blocks for a short period of time until it gives you a “token” to go ahead.
My app connects to a few 3rd party libraries, and I need a rate limiter for each one.