0
votes

A vast difference between the results of performing load testing for 50 virtual users:

Method 1) Single Linux machine (m3.medium)

No of Threads: 50 users
Ramp Uptime: 60 sec

Method 2) JMeter primary-secondary distributed testing

i) server - linux machine (m3.medium)
ii) client1 - linux machine (m3.medium) - No of Threads: 25, Ramp up time: 60 sec
iii) client2 - linux machine (m3.medium) - No of Threads: 25, Ramp up time: 60 sec

jMeter version: 4.0 in each case

Distributed Testing takes about four times more time than single testing. I couldn't find the cause even after several test runs.

enter image description here

1
Are you sure all those source requests are actually hitting the target machine? 50 threads seems like it might be a lot. What happens if you try 24 threads on single machine, and then 12 and 12 on distributed? Or 10 and then 5 and 5?Jonathan
Do all have the same amount of ram and java heap space? Are they located in the same subnet?joCha
"takes about 4 times more time than single testing" - based on what? can you share actual example of what ran, and took different time on both environments?Kiril S.
All the requests are hitting the target machine. All machines are in same subnet as well. Enough ram and heap is also available.Shashank Shah
@kiril I mean while on single machine APIs which takes about few hundred milliseconds takes about 4x milliseconds when ran on distributed env.Shashank Shah

1 Answers

0
votes

How many machines is needed for 50 concurrent users ? TL;DR 1

Use Distributed Testing only when 1 machine isn't enough

Use Distributed Testing only when have to, setting up has its overhead and tuning.

It's relevant for 1K concurrent users and above