Currently we want to conduct a performance test for more than 100k users. I am comparing some tools like Jmeter/Gatling/Tsung/nGrinder, which one will be suitable for us?
All of them can be run in clustered mode so theoretically any will fit.
Looking into Open Source Load Testing Tools: Which One Should You Use? article:
JMeter and Tsung seem to perform better given the same hardware so you can stick to one of them. Be aware that Tsung can be installed on limited number of operating systems, as per documentation theoretically you can run Tsung on Windows
This package has been tested on Linux, FreeBSD and Solaris. A port is available on Mac OS X. It should work on Erlang supported platforms (Linux, Solaris, *BSD, Win32 and Mac OS X).
On Mac OS X you can install Tsung via Homebrew (http://brew.sh/): brew install tsung.
However as per Installing TSUNG on Windows message
Tsung has to my knowledge never been run on Windows. You have to deploy an SSH server so that Tsung can launch other nodes
if you want to run it in cluster. You have to rewrite the various
scripts (they might run under cygwin) and possibly change a few things
in the code.
Note also that platform is also less scalable (Erlang does not support
kernel polling on windows) that's probably the reason why no one
really cared running it on MS system.
This kind of test is impossible to do locally or using only one machine.
You can use JMeter Distributed features to achieve this scale. It is not an easy task, but it is doable.
An introduction to this feature can be found here: http://jmeter.apache.org/usermanual/remote-test.html