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

The automatic rate-limiting feature can unknowingly cripple endpoints if there's a bug in the user's system #7018

Open
lailabougria opened this issue Apr 23, 2024 · 0 comments

Comments

@lailabougria
Copy link
Contributor

Describe the suggested improvement

Is your improvement related to a problem? Please describe.

The automatic rate-limiting feature, doesn't allow users to filter the errors for which to invoke/allow this behavior.

This means that if there's a bug in user code, it could cause a wide range of exceptions in their environment. This triggers the automatic rate-limiting feature, limiting the endpoint to minimum processing power. However, the endpoint can never exit the automatic rate-limiting since there's a bug in a much-used message type, meaning that other message types that could be successfully processed aren't due to the concurrency being down.

This could, in turn, cause other exceptions, for example, the queue filling up, causing errors upstream.

Describe the suggested solution

Describe alternatives you've considered

  • Providing an alerting system (metric, custom check, etc), allowing notification of prolonged rate-limiting behavior
  • Invoking a critical error on the endpoint after a threshold of time in rate-limiting mode
  • Allowing the user to control the types of exceptions for which to enable the automatic rate-limiting feature

Additional Context

No response

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

No branches or pull requests

1 participant