Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(providers/kubernetes): Added QPS and Burst tweaks for client-side throttling #178

Closed
wants to merge 0 commits into from

Conversation

avysochin256
Copy link
Contributor

Hello

The reasoning behind this PR is to enable the adjustment of QPS and Burst configuration parameters in the client-go library.

This will help avoid constant throttling issues when dealing with over 100 K8S deployments. The default values are insufficient for such a large number of deployments.

How client-side throttling works:
// NewTokenBucketRateLimiter creates a rate limiter which implements a token bucket approach.
// The rate limiter allows bursts of up to 'burst' to exceed the QPS, while still maintaining a
// smoothed qps rate of 'qps'.
// The bucket is initially filled with 'burst' tokens, and refills at a rate of 'qps'.
// The maximum number of tokens in the bucket is capped at 'burst'.

@acouvreur
Copy link
Member

Awesome! @valexz
I will change the target branch to beta

This is something I wanted to do for a long time and is a known issue (at least by me)

@avysochin256
Copy link
Contributor Author

avysochin256 commented Sep 13, 2023

It is my first experience with public PR, and seems i did something wrong, when tried to make diff clearer for beta branch. Should I return all to the starting point, or i may just create a new PR based on beta branch?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants