0
votes

What is the best way to perform load test of 30,000 users with jmeter. I have multiple servers, my servers are capable to handle only 3000 users(after that the server CPU is reaching 100%). Can any one help out with this.

2
Are you looking for a way to simulate 30k users across your servers when each server can only simulate at most 3k users, or are you looking to optimize your application to handle 30k users from 3k users on a single server?Frank

2 Answers

2
votes

You may not need to simulate all the 30k users in your test as real-life users don't hammer the server non-stop, they need some time to "think" between operations. Besides users cannot take any actions while page is loading.

So for instance, if

  • User "thinks" for 10 seconds between operations
  • Page response time is 2 seconds

It means that each user will hit server 5 times per minute. 30k users will make 150k requests per minute which is 2500 requests per second which seems to be achievable with your current setup. Make sure you're using JMeter Timers wisely to represent real life user behaviour.

Other things to consider:

  1. JMeter default configuration is good for tests development and debugging, however you need to tweak it when it comes to simulating high loads. See 9 Easy Solutions for a JMeter Load Test “Out of Memory” Failure for configuration instructions
  2. JMeter can be launched in distributed mode when one controller orchestrates multiple load generators running the same test. See JMeter Distributed Testing Step by Step article for overview and setup guidelines.
0
votes

I would agree with the answer above.

You need to think about your user profile.

What is the purpose of the testing itself? Is it to determine the maximum possible load on the system, or is your company thinking that its user base might grow to 30000 at some point?

Try doing some scaled tests with a parameterised script.

Start with a lowish value for number of threads/users (for example 3000, your user current user base).

Increase the user base in steps until you get to 30000.

You should then be able to see at what point your system starts to suffer and then finally break.