-
Notifications
You must be signed in to change notification settings - Fork 181
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
loadbalancer-experimental: add support for prioritization #2905
loadbalancer-experimental: add support for prioritization #2905
Conversation
Motivation: We want to support priority groups in the LB. Modifications: Support it.
...alk-loadbalancer-experimental/src/main/java/io/servicetalk/loadbalancer/PrioritizedHost.java
Show resolved
Hide resolved
...-loadbalancer-experimental/src/main/java/io/servicetalk/loadbalancer/XdsOutlierDetector.java
Outdated
Show resolved
Hide resolved
...-loadbalancer-experimental/src/main/java/io/servicetalk/loadbalancer/XdsOutlierDetector.java
Outdated
Show resolved
Hide resolved
...loadbalancer-experimental/src/main/java/io/servicetalk/loadbalancer/DefaultLoadBalancer.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Missing a few finals
here & there, but nothing of importance to comment on, looks promising.
It would be nice to see how a sub-setting concept would look in this implementation. I have to process it a little more in my head, but i imagine the weight
becomes very overloaded, and my fear is that reasoning will be harder.
You're right: using weight will make things more overloaded. Tbh, the overlay of subsetting and priority is probably going to be very tough regardless of how we represent them and are probably only compatible with some relatively stringent constraints. |
Motivation:
We want a way to support grouping endpoints into prioritization
groups so we can favor some, but still fall back to another group
in the event things go wrong.
Modifications:
Add the notion of prioritization. This lets users define groups
which then get translated into adjusted weights and fed into
the standard endpoint selection algorithms.