0

There are a bunch of Socket.io client implementations out there in e.g. Java (see Java socket.io client), that seem to exclusively support the Websocket protocol.

For benchmarking the server performance of other protocols - and I'm particularly interested in htmlfile as it will be used by IE browsers < 10, unless I enable Flash, which I'm not sure I'll do, as socket.io transport 'flashsocket' takes 5 seconds to start on IE 8 - is there any Socket.io client available that would allow benchmarking of the server?

I don't care too much what OS or programming language it is.

Community
  • 1
  • 1
Evgeniy Berezovsky
  • 18,571
  • 13
  • 82
  • 156

2 Answers2

0

There's https://github.com/Gottox/socket.io-java-client

In addition to WebSocket, it only does XHR, and that feature is currently considered to be in beta:

Status: Connecting with Websocket is production ready. XHR is in beta.

Light testing xhr polling seems to support the claim that it is not production ready yet. I had a bunch of disconnects without subsequent reconnects. This was when testing a few hundred client instances simultaneously in one JVM. As there were errors in the server log, I guess it's the client.

One more guess: As the connection drops are so frequent, and the load on the server is so much higher compared to WebSockets, I wonder whether this client's 'xhr polling' does not do HTTP Keepalive, that would explain a lot... Will check as soon as time permits.

Using WebSocket, I could do 1000 instances per JVM (probably more) and 5000 instances (5 JVMs x 1000 instances each) per machine (probably more, too) without issues.

And apparently

it's easy to write your own transport

Will check this out.

Evgeniy Berezovsky
  • 18,571
  • 13
  • 82
  • 156
0

It should also be easy to create your own by

Evgeniy Berezovsky
  • 18,571
  • 13
  • 82
  • 156