Skip to content

Improve Reactor Netty Connection Pooling #6973

Description

@kushagraThapar

Describe the bug
Rector Netty Connection Pooling is not properly re-using the connections.
Either we are disposing the connections too soon, or there is some other configurations which is not setup correctly, but we are seeing a lot of connections getting created in a short period of time frequently.

To Reproduce
This can easily be reproduced by running ReadThroughput benchmarks on v3 / v4 with high concurrency (for example 2000)

  • Too many connections seen in TIME_WAIT ("netstat | grep TIME_WAIT | wc -l" ==> 150k-200k)

Code Snippet
We expect ReactorNettyClient.java has the issues.

Expected behavior
These are the goals:

  • Connections creations are expensive and hence re-use aggressively
  • In an ideal set-up (with not many NW failures) all connections are re-usable.
  • Gateway mode with a fixed concurrency ideally should only create connections linear to concurrency -> connection re-use

Metadata

Metadata

Labels

Cosmoscosmos:v4-itemIndicates this feature will be shipped as part of V4 release train

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions