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

Add SelectiveTransportExecutor to retry with TCP if UDP is truncated and automatically select transport protocol when no explicit scheme is given in Factory #148

Merged
merged 2 commits into from Aug 13, 2019

Conversation

@clue
Copy link
Member

commented Aug 13, 2019

With these changes applied, the Factory now defaults to automatically selecting the correct transport protocol in its executor-stack. It will always try to send it over the more efficient UDP transport first. If this query yields a size related issue (truncated messages), it will retry over a streaming TCP/IP transport.

It's still possible to explicitly specify the udp:// or tcp:// URI scheme in order force using only the UDP or TCP-based executor stacks respectively. This explicit choice continues to exist mostly for rare special cases and debugging purposes.

Builds on top of #145 and #146
Resolves #19

@clue clue added the new feature label Aug 13, 2019

@clue clue added this to the v1.2.0 milestone Aug 13, 2019

@clue clue force-pushed the clue-labs:selective-transport branch 2 times, most recently from ff630ba to 7caee79 Aug 13, 2019

@clue clue force-pushed the clue-labs:selective-transport branch from 7caee79 to 994b019 Aug 13, 2019

@clue clue requested review from jsor and WyriHaximus Aug 13, 2019

@jsor
jsor approved these changes Aug 13, 2019

@jsor jsor merged commit 6792a5f into reactphp:master Aug 13, 2019

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

@clue clue deleted the clue-labs:selective-transport branch Aug 13, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.