2

I am testing an ASP.NET website using JMeter. I want to check whether my website can handle 500 requests per second. I have used below scenarios to do the load testing. Scenario 1 and Scenario 2 give me two different results, but I do not know if either one is correct. What is the correct way to check whether the website can handle 500 requests per second ?

Scenario 1. enter image description here

Scenario 2. enter image description here

2 Answers 2

1

Both of those scenarios have problems. Scenario 1 has a ramp-up period of only one second. I can't tell you what the right ramp-up period is, but you can figure it out with experimentation. It almost certainly needs to be greater than one second.

Scenario 2 has 60,000 threads. The right number will depend on your JMeter machine and how JMeter is interacting with the site, but it is almost certainly closer to 500 than 60,000.

Of course, your real question was how to measure whether the site can handle 500 req/sec. You haven't given us enough information to answer the question, so I will make some assumptions:

  • Every request is exactly the same, i.e. no authentication, and no request depends on having visited the site before. If that's true, I can forget about users and focus on requests.
  • The site runs on exactly one machine, and it has four cores. Your site can't handle more simultaneous requests than the number of cores on the machine(s) that are running it. That means at any moment the site can't actively work on more than 4 simultaneous requests.

Under those assumptions, I would measure with 4 threads, then with 8 threads, then with 16 threads, and so on, until you stop seeing any improvements. (At some point performance will get worse because either your server or your JMeter machine will bog down.)

4
  • Yes, 500 req/s, that's the requirement. Assumption one is correct, for second one server has 16cores,18gb ram,500mbps bandwidth and I enable multiple request handling. Same kind of server used to host jmeter
    – syard gate
    Jun 20, 2014 at 8:58
  • Can you tell me what can I do? Thank you very much for your reply
    – syard gate
    Jun 20, 2014 at 9:47
  • Start with 16 threads
    – user246
    Jun 20, 2014 at 11:49
  • then Thread group - 16, ramp u - ? , loop count - ?, Please help me on this. And how can I know my test machine support JMeter?
    – syard gate
    Jun 21, 2014 at 15:53
1

If you want to create "500 requests per second" load you need to utilize Constant Throughput Timer with 30 000 samples per minute.

Another great option to precisely control the load is Ultimate Thread Group available via JMeter Plugins which provides easy readable load pattern graph basing on ramp-up, ramp-down and time to hold the load provided.

Hope this helps.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.