Open jcheng5 opened 7 years ago
A big improvement would be to wait until the heartbeat is actually sent to start the timer
I don't see a way to register a callback with faye-websocket-node
for when this happens.
If you like I can put together a PR for this
I would accept a PR to configure the amount of time to wait for a heartbeat reply.
The websocket transport has a hardcoded 10 second timer:
https://github.com/sockjs/sockjs-node/blob/61bba467d9d6b980a651070ed563f59d812e824e/src/trans-websocket.coffee#L99
If the websocket is sending a large message over a slow link to the client, then it may take more than 10 seconds for the heartbeat to actually arrive. A big improvement would be to wait until the heartbeat is actually sent to start the timer, but even then, the client may have large messages it's sending to the server too, which a heartbeat response would be queued behind.
I'm not necessarily asking for a change to the default behavior, but it would be great to be able to disable or configure this timeout, like
disconnect_delay
for the xhr-based transports.(If you like I can put together a PR for this, but I wanted to first ask if such a patch would be welcome.)