Enable TCP keep-alive on all sockets by default #8927
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR adds support for enabling TCP keep-alive on all sockets and enables it by default with a relatively aggressive 90s idle period before the first keep-alive probe is sent, 30s between retries, and 10 unacknowledged retries before a connection is declared dead.
The value of 90s was chosen because Orleans generally establishes relatively few sockets (under a few hundred per host for a large cluster) and some routers aggressively prune connections after a couple of minutes.
Microsoft Reviewers: Open in CodeFlow