-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Websocket connection requests fail when highly concurrent #2708
Labels
Comments
We can confirm the problem. It's testable with wss://echo.websocket.org:443 and attached config |
Merged
We found a way to fix it #2747 Scheduled for 2.9.3 |
buger
added a commit
that referenced
this issue
Dec 29, 2019
Removed all custom websocket code, and instead backported default Go ReverseProxy code, which now supports websockets by default. Websockets now use the same dialer, and transport, which makes it scale and configure way easier. Fix #2708
furkansenharputlu
pushed a commit
that referenced
this issue
Dec 30, 2019
Removed all custom websocket code, and instead backported default Go ReverseProxy code, which now supports websockets by default. Websockets now use the same dialer, and transport, which makes it scale and configure way easier. Fix #2708
verified, fixed. before:
after
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Branch/Environment/Version
Describe the bug
When Tyk proxies multiple websocket connection requests simultaneously, occasionally one of them will fail, either with a 500 response, or a response containing an invalid Sec-WebSocket-Accept header. The following is logged by Tyk:
I originally encountered this when running integration tests that (due to parallel execution) can open up to around 10 websocket connections simultaneously. We run two gateway servers behind an AWS load balancer with clustering.
Reproduction steps
Steps to reproduce the behavior:
wscat
installed, something like this will encounter a single connection failure at least 50% of the time:Configuration (tyk config file):
See attached API configuration. Tyk config is just the default from tykio/tyk-gateway:v2.9.1 with the following env variables set:
The text was updated successfully, but these errors were encountered: