简体   繁体   中英

jmeter thread group vs Constant Throughput Timer

I am conducting a performance test (TPS) using jmeter.

I am requesting about 10,000 TPS, but the following two results are different. (Position that 10,000 TPS responds normally)

  1. 1000 thread x 600 target throughput(in samples per minute)
  2. 100 thread x 6000 target throughput(in samples per minute)

I think the two results should be the same, but why is the response time delayed as the thread increases?

I think the two results should be the same - why they would be the same?

Let's imagine your system has fixed response time of 1 second, in that case:

  1. With 1000 threads you will get 1000 requests per second and you can limit the throughput to 10 requests per second using the Constant Throughput Timer
  2. With 100 threads you will get 100 requests per second, no limiting is required

And what if response time is 2 seconds?

  1. With 1000 threads you will get 500 requests per second
  2. With 100 threads you will get 50 requests per second

Constant Throughput Timer:

  • acts precise enough on "minute" scale, if your test lasts less than minute it might not apply the throughput
  • can only pause the threads to limit the throughput (requests per minute) to the desired value. If current number of threads is not enough in order to conduct the required load - the time won't have any effect.

If you want to send requests at the rate of 10000 TPS it worth considering going for the Throughput Shaping Timer and Concurrency Thread Group combination connected via the Feedback Function in this case JMeter will be able to kick off extra threads if current number is not sufficient.

But also be informed that:

  1. JMeter should be able to start as many threads as needed to send 10000 TPS so make sure to follow JMeter Best Practices or even consider going for Distributed Testing Mode
  2. Application needs to be able to handle the load and respond fast enough, JMeter waits for the previous response before starting the new request so if application is able to serve ie 5000 requests per second only you won't be able to reach 10000 by any means

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM