How to do Testing In Distributed Mode Using Apache JMeter?

Back to Blog
Feature image for Distributed Mode Testing blog

How to do Testing In Distributed Mode Using Apache JMeter?

Testing In Distributed Mode Using Apache JMeter

This blog explores how to use multiple systems to perform load testing in distributed mode using Apache JMeter.

In this, we’ll use a local client system as a master that handles the execution of a test using multiple remote clients where each remote client behaves as a slave that executes the test on the target server.

Each slave system executes a load test following conditions set by the master.

This testing helps to perform a higher number of simultaneous users requesting to the servers. The distributed performance testing using JMeter will look like this

Cycle of Jmeter-server

Setup and Prerequisites

 We have to follow some prerequisites for a smooth setup and run the test.

  • Multiple machines with JMeter installed on
  • Firewalls in the machine should be turned off or required ports should be opened for
  • The Server and the slave master client machines must be on the same.
  • Each machine JMeter can access the target
  • Use the same version of Java and JMeter on all slave and master
  • Disable the SSL for RMI

We have our system ready to configure the slave and master machines.

Configure Slave System

In the slave system, we will go to the JMeter/bin folder and execute the JMeter-server.bat file.

Configure Master System

In the master system, we will go to the JMeter/bin folder and edit the remote_hosts property in the jmeter.properties file to add the IP Address of the slave systems which are comma-separated.

RMI Configuration Image

remote_hosts=192.168.172.121,192.165.0.20,192.165.0.30

Now we added three slave systems.

Now by starting the JMeter Master in GUI mode, we confirm all the slaves listed in the Run

> Remote Start option.

Good to Read:- How to Use Regular Expression for dynamic values in Jmeter?

Test Execution

For single client start, Click Run on the menu bar and select Remote start then select the IP address of that slave machine
Test execution Image

For all client start tests, Click on Run on the menu bar then RemoteStart All

Image of Remote Start All

Now we are good at starting a JMeter master test execution on the target server for multiple clients.

Results

We can observe the execution results in the JMeter (master) after the test execution finishes.
image of Sampler result

Limitations of Distributed Mode Testing

  • The Server and the clients must be on the same
  • Testing in the distributed mode requires the desired server to have large processing The target Server might be overloaded if it gets too many requests by distributed JMeter tests.
  • All the slaves (load generators) must be in the same server/network so that there is no discrepancy in the networking latency which impacts the expected

Don’t let your customers or users suffer through buggy or malfunctioning software. Invest in a dedicated QA test engineer who can help you identify and fix issues before they impact your business. Contact Us today to find out how we can help you find the right QA test engineer for your team.

Share this post

Back to Blog