Enable server side control over maximum connection age#10867
Enable server side control over maximum connection age#10867elevran wants to merge 2 commits intoistio:masterfrom elevran:pilot_envoy_lb_7878
Conversation
|
@elevran: The following test failed, say
DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here. |
|
/lgtm |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: elevran, liamawhite If they are not already assigned, you can assign the PR to them by writing The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
@elevran could you rebase to release-1.1 branch? |
|
PR #10870 resubmitted off of |
Allow configuration of maximum connection age on the gRPC server.
Once a connection's lifetime reaches the maximum age, the server gracefully closes it (i.e., the client is informed and allowed grace time to drain messages). After a grace period, the connection is forcibly closed. Actual connection age is randomized by the gRPC server implementation to avoid connection thundering herds.
By controlling connection lifetime, clients are forced to periodically reconnect, achieving a better load balancing spread across servers - quicker. Since connections are long-lived, server instances that are available earlier in the endpoints pool will get (and retain) a larger portion of the client connections, leaving connection distribution unbalanced.
By default, the existing behavior is maintained (i.e., maximum connection age and grace are set to "infinity"). Users who wish to adopt the new behavior can do so using the added command line parameters.
Documentation changes are still needed and will be done in a separate PR.
Fixes #7878