What is distributed load
testing?
Distributed load testing
is the process using which multiple systems are used for simulating load of
large number of users. In JMeter this is achieved by creating a Master-
Slave configuration.
Why it is required?
The reason of using more
than one system for load testing is the limitation of single system to generate
large number of threads (users).
What other options do we
have?
Apart from using
distributed load testing we can perform load
testing over cloud also. Load testing on cloud (like Amazon’s EC2) has
several advantages- easy scalability, no maintenance, fast deployment and no
artificial network bottlenecks.
Another alternative is Blazemeter which is a cloud based service
compatible with Apache JMeter. It generates large amount of instant load and
provide very comprehensive reporting and analysis features.
Also, we can perform distributed load testing on cloud, in
which multiple machines on cloud can be used for generating large amount of
load.
Distributed Load Testing
using JMeter-
For distributed load
testing we need to create Master-slave configuration wherein Master will
control all the slaves and collect the test results. To make the system work
firewall needs to be turned off and all the systems need to be in same subnet.
Also, preferably all the
systems need to use same version of JMeter and Java.
1. First of all we need to start the jmeter-server.bat in the slave systems. For this just go to the
bin folder inside JMeter home directory and run the batch file jmeter-server.bat(for windows) or jmeter-server (for linux).
2. Now on the master system open the properties
file jmeter.properties and edit the remote_hosts entry. Remove the loopback
address’s value (127.0.0.1) for the remote_host entry and specify the IP
addresses of all the slave systems separated by commas.
3. We just need to Remote start all the slave
machines remotely in JMeter. For this just open JMeter on the Master machine (for
which properties file is just edited). Open
your test script and remote start all the nodes.
This was all about distributed load testing in JMeter.


Blazemeter also has plugin for JMeter , which allows controlling cloud test from local JMeter instance.
ReplyDeleteYes, pretty cool
Delete