-
Notifications
You must be signed in to change notification settings - Fork 120
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
Eventing Trigger - dispatcher rate limiter #4171
Comments
currently, there is not, however, I'm wondering if the way is configurable is working for you
from where did you get that 20 ? I think you should see 1 event per second in this case |
Hi @pierDipi, Thanks for your reply. The number is showing in my test, but I'm not sure where the value of 20 comes from. Could it be the default worker pool size for Vert.x (20 threads)? Initially, I tested with 1 partition, and then increased it to 3 partitions. The behavior is as follows:
The above finding is incorrect. I will update it below. |
which version are you using? |
Hi @pierDipi, sorry, I forgot to add my version:
|
Hi Team, Could we implement a feature to control the rate limit for Knative triggers and also provide clear documentation to guide users on how to configure and manage their rate limits effectively? Why is this needed?
Having a configurable rate limit at the trigger level would help mitigate these risks by throttling the flow of messages and ensuring the service operates within manageable limits. Looking forward to hearing your thoughts on this. |
Hi @pierDipi, Previously, I mentioned that the load test showed a rate of 20 messages per second for each partition. However, this result turned out to be completely incorrect. During further testing, I discovered that the rate was caused by a limitation set by Moreover, the rate limiter is not applied to Knative triggers or the Knative dispatcher because we currently lack the control plane logic to enable the flag and the data plane logic to enforce the correct rate. To address this, I added logic to control the Knative trigger rate limit and applied it to my system.
This is my first time contributing and adding code logic to a public repository. If you notice any mistakes in my code, please feel free to let me know. Thanks to the team for building this awesome project! |
Hi Team,
I am currently working on applying a rate limiter to control the rate of messages process by a Trigger.
Based on my tests, this can be achieved by:
1. Enabling the feature flag:dispatcher-rate-limiter: enabled
.2. Creating a new broker with 1 partition.
3. Adding an annotation to the Trigger to ensure it is ordered:
kafka.eventing.knative.dev/delivery.order: ordered
.4. The limit is determined by the following equation:
LimitedNumber = NumberOfPartitions * 20
The above finding is incorrect. I will update it below.
I would like to ask if there is another way to control the LimitedNumber.
From my reading of the code, the bucket is calculated a: link
Alternatively, is there a way to apply a configuration or annotation to set the limit number for a Trigger?
The text was updated successfully, but these errors were encountered: