confluentinc/parallel-consumer

Add distributed rate limiting support

astubbs opened this issue · 2 comments

Use a central cache to share rate limit info amongst processing cluster, to implement coordination of rate limit exhaustion to prevent accidental overrun while effectively exhausting the available credits.

https://dzone.com/articles/introduction-jcache-jsr-107
https://github.com/vladimir-bukhtoyarov/bucket4j
vs
https://github.com/mokies/ratelimitj

resilience4j doesn't support distriubted rate limiting: resilience4j/resilience4j#350 (comment)

Had a quick look at it - something like this with Reactor and BucketJ should work.

Closing Issue