-
Notifications
You must be signed in to change notification settings - Fork 4.9k
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
Introduce fixed_value in the adaptive concurrency filter #38359
base: main
Are you sure you want to change the base?
Conversation
CC @envoyproxy/api-shepherds: Your approval is needed for changes made to |
Some comments:
|
@wtzhang23 thanks for submitting the PR! We can't remove the Let me know if this proves to be difficult and I can give it some more attention. Thanks! |
Sure. @tonya11en would you like this as a typed extension in case more controllers pop up? |
I don't think you need to go through all that. You should be able to just make a new config for the controller and add it to: envoy/api/envoy/extensions/filters/http/adaptive_concurrency/v3/adaptive_concurrency.proto Lines 99 to 105 in feaa042
Then just instantiate the appropriate controller here, based on whichever controller gets configured: |
Quickly sketched out the implementation. My C++ is a little rusty so feel free to critique it as harshly as you'd like :) (e.g. whether multiple inheritance is bad here and composition is preferred, or whether it's better to have the config class fields duplicated). Another problem is this is using protobuf oneofs which from what I remember is advised against. |
Signed-off-by: William <wtzhang23@gmail.com>
f10a217
to
80afad4
Compare
…ean up impl) Signed-off-by: William <wtzhang23@gmail.com>
80afad4
to
6ecc2db
Compare
Signed-off-by: William <wtzhang23@gmail.com>
Signed-off-by: William <wtzhang23@gmail.com>
Signed-off-by: William <wtzhang23@gmail.com>
… in base config Signed-off-by: William <wtzhang23@gmail.com>
@tonya11en I was thinking about sharing the same logic between the two for sampling the sample RTT, but:
Let me know your thoughts. |
I haven't taken another pass yet, but I'll let you decide on the cleanest approach. Let me know when you think it's ready and I'll review. Seems like there are some conflicts that need to be resolved at the moment. /wait |
Commit Message: introduce fixed_value in acc
Additional Description: This allows users to configure the adaptive concurrency filter to skip learning the minimum RTT and use a predetermined value. This is useful for upstreams that
Risk Level: High
Testing: Unit tests
Docs Changes: N/A
Release Notes: In PR
Platform Specific Features: N/A