Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP


Stress test tool for SocketStream #176

nponeccop opened this Issue · 6 comments

4 participants

nponeccop SocketStream Owen Barnes Paul Jensen

I'm going to develop a stress test tool to test our app (and submit it as a pull request of course).

So any ideas and/or suggestions are welcome.

I'm looking at something in the lines of :


No plans to develop anything like this at present, so it would be great if you do. Thanks


Here is early proof of concept code:

I had to patch to add the handshakeHeaders option. The code creates 1000 clients in parallel. Each client sends app.init RPC which subscribes it to a channel depending on account subscription status.

Then every 15 seconds two events are broadcast using channels, so each of the 1000 clients receives only one.

1000 parallel RPCs and broadcasts to 1000 clients don't put much load on the server which is a good sign.

Owen Barnes

Thanks @nponeccop

@dennismartensson has also been working on this problem and has posted a project here:

I have yet to fully dive into it, but I know it uses PhantomJS to spawn new headless browsers to test concurrency.

Paul Jensen

Wanted to know whether anything more is happening on this front? it's worth noting recent efforts with and

Owen Barnes

Yes, Thor is great! It came out very recently.

If you pass it a generator file you can simulate load on a SS server by sending it the same message an ss.rpc() produces.

Haven't got around to using it with SocketStream yet, but if you get chance, I'd love to see how it goes.

Paul Jensen

I had a brief look into this. I think that we'll need to upgrade SocketStream's version of as a first step, and then create a suitable generator file for the expected websocket messages.

Paul Jensen paulbjensen added this to the 0.3.12 milestone
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.