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

Support local ratelimit #1336

Closed
zhaohuabing opened this issue Apr 20, 2023 · 6 comments
Closed

Support local ratelimit #1336

zhaohuabing opened this issue Apr 20, 2023 · 6 comments
Assignees
Labels
kind/enhancement New feature or request road-to-ga
Milestone

Comments

@zhaohuabing
Copy link
Member

zhaohuabing commented Apr 20, 2023

Description:
Support local ratelimt as described in envoy Local rate limit doc.

Global ratelimit and local ratelimit are used in different scenarios:

  • If you want to enforce a global access control policy to a particular resource, then global rate limiting should be used. A typical scenario is to set how often a user can access an API according to the user’s service level agreement. Docker Hub, for example, has a rate limiting policy for how often a user can pull images from its registy. Paid users have a higher quota than free users.

  • Local ratelimit is very useful when proxy instances can be horizontally scaled out based on the client load. In this scenario, since each proxy instance get its own rate limit quota, the traffic that the fleet of envoy proxies can handle increase when more proxy instances are spun up.

@zhaohuabing zhaohuabing added the kind/enhancement New feature or request label Apr 20, 2023
@zhaohuabing zhaohuabing self-assigned this Apr 20, 2023
@arkodg
Copy link
Contributor

arkodg commented Apr 20, 2023

+1 for this, the API could mimic/reuse existing data structures that exist from GlobalRateLimit

type GlobalRateLimit struct {

The only issue I see is supporting the Distinct match case, which needs some upstream work
envoyproxy/envoy#23351
cc @cpakulski @vikaschoudhary16

@github-actions
Copy link

This issue has been automatically marked as stale because it has not had activity in the last 30 days.

@github-actions
Copy link

This issue has been automatically marked as stale because it has not had activity in the last 30 days.

@github-actions
Copy link

This issue has been automatically marked as stale because it has not had activity in the last 30 days.

@github-actions github-actions bot added the stale label Jul 27, 2023
@arkodg arkodg removed the stale label Jul 27, 2023
@arkodg arkodg added this to the 0.6.0-rc1 milestone Aug 11, 2023
@github-actions
Copy link

This issue has been automatically marked as stale because it has not had activity in the last 30 days.

@github-actions github-actions bot added the stale label Sep 11, 2023
@arkodg arkodg removed the stale label Oct 14, 2023
@arkodg arkodg modified the milestones: 0.6.0-rc1, Backlog Oct 14, 2023
Copy link

This issue has been automatically marked as stale because it has not had activity in the last 30 days.

@github-project-automation github-project-automation bot moved this from In Review to Done in Envoy Gateway: The Road to GA Dec 22, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/enhancement New feature or request road-to-ga
Projects
No open projects
Development

No branches or pull requests

3 participants