Skip to content
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

Implement HappyEyeballsV2AsyncClientConnectionOperator #527

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

arturobernalg
Copy link
Member

@arturobernalg arturobernalg commented Dec 23, 2023

This pull request adds a new implementation of the Happy Eyeballs algorithm for asynchronous client connections in Apache's HttpClient component. The new implementation, HappyEyeballsV2AsyncClientConnectionOperator, builds on the previous version by improving support for IPv6 and providing more fine-grained control over connection timing.

The changes include:

  • Addition of HappyEyeballsV2AsyncClientConnectionOperator class and related test classes
  • Modifications to existing code to use the new operator where appropriate
  • Documentation updates
  • Allow activate HappyEyeballsV2Async via Fast Fallback var in PoolingAsyncClientConnectionManagerBuilder.java

This commit adds the implementation of HappyEyeballsV2AsyncClientConnectionOperator, a new class that supports asynchronous connection establishment over both IPv4 and IPv6. The operator follows the Happy Eyeballs v2 algorithm to attempt to connect first over IPv6 and then fall back to IPv4 if needed.
@PascalSchumacher
Copy link

I guess this implements https://issues.apache.org/jira/browse/HTTPCLIENT-2178?

@arturobernalg
Copy link
Member Author

I guess this implements https://issues.apache.org/jira/browse/HTTPCLIENT-2178?

Yes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants