2

Below is my result of Load test with JMeter. What my client is asking is, when should we consider up scaling of our system. How can you determine the bottlenecks in the below results.

Also for 1000 samples with 100 Ramp up time, the Avg has increased, this is unusual because it should have decreased if we compare with the other 2 records with lesser Ramp up time.

The Red portions are the failed tests where JMeter had hung and was not proceeding. Also from this I concluded that with 50 Ramp up time and 1000 users, our system cannot work. Is it correct...?

Can someone help me interpret this result.

Thanks in advance.

enter image description here

2
  • Do you have any SLA from Client which states that with 1000 users how much response time is acceptable?
    – Dhiman
    Aug 14, 2015 at 12:52
  • No SLA. Client is unaware about the technicalities. He has left to us to ponder on the same.
    – Faiz
    Aug 14, 2015 at 13:40

1 Answer 1

2

If you have any SLA defined from the client side, then you should compare the Response Time to that SLA like your client says application should have 5 secs of Response time with 500 users, then if your application is not showing that behavior then you need performance tuning.

If you don't have any SLA then you can use the general theory, that any response time Greater than 4 seconds is a long delay and causes issues to end users too (this is based on "The Art of Application Performance Testing" by "Ian Molyneaux"), although exceptions are always there (How heavy is your application/page, Number of users, Network I/O etc.)

Plot graph for Throughput and Response Time against users. Means User Number should be on X-axis and Throughput, Response Time should be on Y-axis. In ideal situations Throughput should be a parabola (in actual situation a distorted parabola) i.e. First it should increase with users and then after attaining a maximum value it should decrease with users, while Response Time should be increasing linearly with users. So the point where Throughput and Response Time graph intersects each other after Throughput has attained it maximum value, that point is the Threshold point, this is the number of maximum users supported by your application with current hardware configuration.

  • If this Threshold value of users is less than required than you need to Performance Tune your application and need to upgrade the Hardware.
  • If this value is more than required than no need to performance tune or upgrade hardware.

Refer this image as an example for Throughput vs Response Time graph

enter image description here

Now, if after this analysis you think that hardware upgrade is required than analyze the Resource Utilization results, to see where is bottleneck in hardware i.e. you need more CPU Cores or RAM or anything else.

Also, if target is 1000 users then no there should be 0% error in your results, because error shows that users got some weird page or message, High Response time is different from Error page. So error should be 0% for the target number of users.

Note: We generally take 90% line value whenever we talk about Response Time in our analysis, for the worst case part you can go for the Maximum value too. But remember this is the maximum time taken by any user.

Refer this link for more detailed information

https://www.manageengine.com/products/qengine/performance-testing-report-analysis.pdf

Also, read "When do I stop" part of this link, it's good.

http://nico.vahlas.eu/2010/03/30/some-thoughts-on-stress-testing-web-applications-with-jmeter-part-2/

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.