What is the best way to create stress test to socket.io application?

2,249 views
Skip to first unread message

Alexey Zakharov

unread,
May 9, 2011, 2:03:55 PM5/9/11
to sock...@googlegroups.com
What is the best way to create stress test to socket.io application?

Tom Longson (nym)

unread,
May 9, 2011, 2:26:54 PM5/9/11
to sock...@googlegroups.com
I've used remy's socket-io-client to simulate up to 250 connections,
although haven't gone higher than that yet.

https://github.com/remy/Socket.io-node-client

Cheers,
Tom Longson (nym)
------------------------------
http://tomlongson.com

Tom Longson (nym)

unread,
May 9, 2011, 2:28:59 PM5/9/11
to sock...@googlegroups.com
Also, if you want a "real world" way to stress test any app, get
people on Mechanical Turk to try to accomplish a goal in your app.
It's also a great way to get valuable UX feedback without spending too
much money (assuming you set up some analytic service first).

Cheers,
Tom Longson (nym)
------------------------------
http://tomlongson.com

Tom

unread,
May 9, 2011, 2:29:15 PM5/9/11
to sock...@googlegroups.com
Depending on your application this can be very difficult.

For example, some applications may not be able to handle that many connections while they are actively using the application.

I do not know of simulators that actually use an application like a normal client would.

- Tom

2011/5/9 Tom Longson (nym) <tom...@gmail.com>

thesec

unread,
May 10, 2011, 1:55:03 AM5/10/11
to sock...@googlegroups.com
You could use e.g. http://seleniumhq.org/ which allows to simulate actual browser clients.

Best,
sec

Tom

unread,
May 10, 2011, 5:40:43 AM5/10/11
to sock...@googlegroups.com
@Theses, correct, but that does not allow you to run thousands of simultaneous clients, unless you use selenium grid with some insane server infrastructure setup, right?

- Tom

2011/5/10 thesec <der...@googlemail.com>

Alexey Zakharov

unread,
May 10, 2011, 10:00:58 AM5/10/11
to sock...@googlegroups.com
Yep, socket.io node client looks most promising.

I working on pubsub server which works on top of redis and socket.io https://github.com/lexer/node-pubsub

Currently it spawn redis connection for each socket, so i wonder if it could become a bottleneck of the solution.

Jukka-Pekka Kekkonen

unread,
May 10, 2011, 12:57:08 PM5/10/11
to sock...@googlegroups.com
You shouldn't worry about that, since Redis is designed for that kind of stuff

skrat

unread,
Sep 22, 2011, 11:07:01 AM9/22/11
to sock...@googlegroups.com
That won't stress test all the transports, to get a reliable stress test data you really need some (diverse) browser cluster. And that's so difficult to get, that one has to consider safe way of testing in production environment. Ie. run socket.io on dedicated server, same goes for load balancer / reverse proxy if you have one.
Reply all
Reply to author
Forward
0 new messages