LearnBoost/socket.io — Issue #750: Round Robin load balancing fails for non-shared store
Author: bmeck
Created: 2012-02-14 23:32:38+00:00
State: open

When using a load balancing proxy, socket.io is unable to keep a "sticky" connection to a server, causing the 2nd transport request to go to a different machine than the original handshake request. In order to get around this, it would be nice if there was a way to detect the incoming handshake as attempting to upgrade to socket.io, and some response headers to tell socket.io not to close the connection. This would mean keep-alive only transports would work in the proxy, however, this gets around the issue of round robin balancing when there are multiple requests before transport.

Something like:
```http
X-Protocol-Hanshake: socket.io
```

```http
X-Protocol-Accept: keep-alive-only
```

related: #682