-
Notifications
You must be signed in to change notification settings - Fork 4.4k
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
Add envoy connection balancing. #14616
Conversation
1a37e51
to
82d5c1a
Compare
82d5c1a
to
f95076b
Compare
d7afbc2
to
fab39ed
Compare
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.
Lgtm!
9a3c1bf
to
9b1bfe8
Compare
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.
Looks good 👍
website/content/docs/connect/config-entries/service-defaults.mdx
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.
Made a few suggestions on the docs.
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
Co-authored-by: trujillo-adam <47586768+trujillo-adam@users.noreply.github.com>
Description
This PR adds support for the Envoy
exact_balance
configuration option.https://cloudnative.to/envoy/api-v3/config/listener/v3/listener.proto.html#config-listener-v3-listener-connectionbalanceconfig-exactbalance
Without this configuration, connections are randomly allocated to Envoy worker threads. Because connections never change threads in Envoy after creation, this can result in uneven distribution of workload. For long-lived, high-traffic connections, it is best to specify this option to guarantee that connection counts are maintained evenly between Envoy workers.
Testing & Reproduction steps
Unit tests were added. Manual testing was performed by using the following configuration and toggling the various permutations of the new fields, then inspecting the Envoy admin
config_dump
endpoint.PR Checklist