Shivam Mittal
Shivam Mittal

Reputation: 1

How to run 200k requests in an hour from JMeter

I want to hit my application with 200,000 requests in an hour. I am using JMeter to perform this testing.

I am doing this test on a local spring boot application.

The result I am looking for is to configure JMeter thread group for a throughput of 55 hits per second.

How should I configure the thread group to get 200,000 in an hour?

So far I've tried -

  1. First Approach i) Reduced my requirement to 10,000 requests in 180 seconds which is a smaller proportion to my original ask. ii) Number of threads - 10,000 iii) Ramp-up period - 180 seconds iv) This works fine and I get the desired throughout of 55/sec, but this fails further as I increase the proportion to 50,000 threads in 900 seconds(15 minutes), I get the desired throughout but JMeter and my system becomes extremely slow and I also notice 6% error in response. I believe this is not the correct approach when I want to achieve 200k and more.

  2. Second Approach i) I found this solution to put in a Constant throughput timer, which I did. ii) Number of threads - 10 iii) Ramp-up period - 900 seconds iv) Infinite loop v) Target throughout in minutes - 3300 vi) calculate throughout based on - all active threads.

Although I had configured the ramp-up to be 15 minutes, it seems to run for more than 40 minites until it achieves a throughput of 55/sec due to the constant throughput timer. Found no errors in response in this approach.

Upvotes: 0

Views: 769

Answers (1)

Dmitri T
Dmitri T

Reputation: 168072

The easiest is going for Precise Throughput Timer

enter image description here

However you need to understand 2 things:

  1. Timers can only pause JMeter samplers execution rate in order to limit JMeter's throughput to the desired value so you need to supply sufficient number of threads in the Thread Group. For instance 200k requests per hour is more or less 55 requests per second, if your application response time is 1 second - you will need 55 threads, if it's 2 seconds - you will need 110 threads and so on. The most convenient option is using Throughput Shaping Timer and Concurrency Thread Group combination, they can be connected together via Feedback Function so JMeter would be able to kick off more threads if the current amount is not sufficient to conduct the required load.
  2. The system under test must be capable of processing that many requests per hour, if it doesn't - you won't be able to achieve this whatever you do from JMeter side.

Upvotes: 1

Related Questions