opt(s2n-quic-dc): clamp TCP server concurrency #2827
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.
Release Summary:
Resolved issues:
n/a
Description of changes:
The lock contention referenced in the comment is a significant problem as the number of cores increases. In the future we can consider other mitigations for it (e.g., io_uring's fixed fd pool), but that's not possible until we can raise our minimal kernel baseline and is a much larger effort.
Call-outs:
n/a
Testing:
Testing the # of spawns is pretty annoying. I don't think I have any off-by-one logic here but in the worst case 4 becomes 5 or 3, and either is fine too; 4 is not some specially chosen magic number, just "not too high".
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.