Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Load test for 1000 concurrent users

We are planning to use Visual Studio 2010 load test for doing stress test for our app. We like to find out whether our MVC3 app can handle 1000 concurrent users or not.

How many physical machines do we need for that?

The current plan that we have in mind is as below.

  1. Server 1 ( Web Server + MS SQL ) : This server is for hosting our application.
  2. Server 2 ( Test Controller + its database)
  3. Machine 1 (Test agent 1 for 200 concurrent users) * 5

So, seems like we will need 7 physical machines. Are we over-estimating about physical machines? Any idea for load testing 1000 concurrent users would be appreciated. Thanks!

like image 861
Michael Sync Avatar asked Jul 09 '12 09:07

Michael Sync


People also ask

How many concurrent users are needed for load test?

Capacity limits depend on the monitoring platform type due to the difference in test execution algorithms: For HTTP (S) test each Load Injector can handle approximately up to 1000 concurrent HTTP users. For Web page or Web application test each Load Injector can handle approximately up to 25 concurrent users.

Can we run 1000 users in JMeter?

This depends on the test plan and the number of listeners, but users have reported successfully running 1000 threads in a single JMeter instance. Also, note that JMeter can place a much higher load on a system than a human user can, as it can make requests much faster.

How is concurrent user load testing calculated?

Calculating the Number of Concurrent Users For example, if your peak visits per hour is 200 visitors and the average visit duration is 6 minutes, the number of concurrent users that should be used to create 200 visits per hour is 20 concurrent users.

How many concurrent users can JMeter handle?

In conclusion, we can say that you can simulate up to 10,000 users on a JMeter load test even on a regular laptop. This depends on following 4 simple rules: Use JMeter listeners for debugging purposes only. Run JMeter performance tests in non-GUI mode.


1 Answers

According to my experience on load testing through Visual Studio 2010 I suggest:

  1. On server2 you can also add one Test Agent. Controller is not a heavy process. Its work is just sharing the tests among the agents and control them.
    It also collects the Data and Diagnostics, however I suggest to follow this MSDN post and not use them.
  2. I think that 5 agents for 1000 users are too many. I am able to run about 700-800 users per agent. Of course that depends from the hardware and the Unit Tests/ Web Performance Tests you use on your Load Tests.
  3. Unless this is your production deployment scenario for your project, I'd suggest on server1 to separate the Web Server from your Db because on load testing both will need more CPU and Memory.
like image 143
chaliasos Avatar answered Oct 20 '22 19:10

chaliasos