How to do Testing In Distributed Mode Using Apache JMeter?
Introduction
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 which 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
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 are 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.
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
For all client start tests, Click on Run on the menu bar then RemoteStart All
Now we are good at starting a JMeter master test execution on the target server for multiple clients.
Good to Read:- Introduction of Apache JMeter
Results
We can observe the execution results in the JMeter (master) after the test execution finishes.
Limitations of Distributed Mode Testing
- The Server and the clients must be on the same
- Testing in the distributed mode required 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.
Originally published at https://www.devstringx.com on April 18, 2023