You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@jmeter.apache.org by Evan J <ma...@gmail.com> on 2020/07/05 20:43:21 UTC

How to Simulate Surge/Burst Request with JMeter

I am trying to see if I can simulate a burst mode in JMeter (2.x -- that's
the only version I have access in this particular environment and cannot
upgrade) with a sustain load, and a fixed duration/flight-time at certain
intervals.

For instance, I would like to flood the target with 4 separate thread
groups of 80 users, every 30 minutes for around 5 continuous minutes. This
is in addition to the existing main thread group that is making 200
simultaneous requests forever (24 hours+).

My JMeter setup is as following:

- A main thread user group (200 users, 5 secs ramp-up, forever loop)
   - It contains 4 separate HTTP Requests as its children (they get
called as long as the script is not shutdown)
- 1st separate thread group with 80 threads, 5 secs ramp-up, forever
loop; as its children:
   - "Constant Timer" for interval invocation, e.g. every 30 mins
   - "Runtime Controller" for duration/flight-time configuration, e.g.
5 mins continuously
   - "Loop Controller" to iteratively executing the requests, set to
forever loop (I even tried fixed numbers, e.g. 10)
   - An actual `HTTP Request`
- 2nd separate thread group with identical setup except different HTTP Request
- 3rd separate thread group with identical setup except different HTTP Request
- 4th separate thread group with identical setup except different HTTP Request

I tried to play with Ultimate Thread Group
<https://jmeter-plugins.org/wiki/UltimateThreadGroup/#Ultimate-Thread-Group>
but seems like it doesn't create a surge mode, but it does execute it for
the set duration (spread out). The requests are uniformly distributed in
that time period rather than being sent in burst mode to the target server.
So it appears that it only subscribes to sending a number of requests equal
to the number of thread counts for that duration.

What I want is for those threads in these surge thread groups to
continuously send requests for the entire configured duration, non-stop,
similar to the main load thread group, rather than just sending X amount of
requests (equal to the number of threads) once.

Is this achievable with JMeter?