How to achieve 4000+ requests per second using JMeter.

5,303 views
Skip to first unread message

adnant...@gmail.com

unread,
Sep 5, 2016, 11:57:31 PM9/5/16
to jmeter-plugins
I am trying to perform a stress test where I need to hit my application server with 4000 requests in exactly one second. I need to increase this value gradually. But the problem is I can't achieve this scenario. I have taken ethereal traces of the requests hitting the application server. The maximum number of requests I get was around 2500 requests per second. 

The response of the server or the application is not my concern right now. All I am trying to achieve is "4000+ requests are hitting the server in exactly one second". The request is simple and it's a GET requests. I have tried using "Synchronizing Timer" or defining "Ramp up Time=0" in the thread group level. But still no success. 

Is it possible to generate 4000+ requests using Jmeter in exactly 1 second? Or there is a limitation for that in JMeter. 

Please let me know if I need to change any server configuration to achieve this. I am doing all tests from command line. 

Using Wireshark I can count how many requests are hitting the server in exactly one second and the count is fluctuating. The highest number I get was around 2500 requests in one second. 

Note: The time taken by the application server to process those requests is not my concern right now, I need to hit the application server with more than 4000 requests in exactly one second.

My source server configuration is given below: 

Architecture :             x86_64 
CPU op-mode(s):        32-bit, 64-bit 
Byte Order:                Little Endian 
CPU(s):                     12 
On-line CPU(s) list:     0-11 
Thread(s) per core:      2 
Core(s) per socket:      6 
Socket(s):                  1 
NUMA node(s):           1 
Vendor ID:                GenuineIntel 
CPU family:                6 
Model:                      45 
Stepping:                  7 
CPU MHz:                 1999.900 
BogoMIPS:                3999.80 
Virtualization:           VT-x 
L1d cache:                32K 
L1i cache:                32K 
L2 cache:                 256K 
L3 cache:                 15360K 
NUMA node0 CPU(s):     0-11 
Ram:                        16GB 

adnant...@gmail.com

unread,
Sep 6, 2016, 12:11:58 AM9/6/16
to jmeter-plugins, adnant...@gmail.com
My Application server configuration is as such: 

Architecture:          x86_64 
CPU op-mode(s):        32-bit, 64-bit 
Byte Order:            Little Endian 
CPU(s):                32 
On-line CPU(s) list:   0-31 
Thread(s) per core:    2 
Core(s) per socket:    8 
Socket(s):             2 
NUMA node(s):          2 

Vendor ID:             GenuineIntel 
CPU family:            6 
Model:                 62 
Stepping:              4 
CPU MHz:               3299.946 
BogoMIPS:              6599.12 

Virtualization:        VT-x 
L1d cache:             32K 
L1i cache:             32K 
L2 cache:              256K 
L3 cache:              25600K 
NUMA node0 CPU(s):     0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30 
NUMA node1 CPU(s):     1,3,5,7,9,11,13,15,17,19,21,23,25,27,29,31 
Ram:                         64GB 


I am not getting any "OutOf Memory" exception as I configured the JVM heap size to 8Gb. The Stack size is 10Mb (ulimit -s).

Andrey Pokhilko

unread,
Sep 6, 2016, 7:05:32 AM9/6/16
to jmeter-...@googlegroups.com
Hi,

The Throughput Shaping Timer is the plugin for you.

But it sounds that you already reaching the capacity limit for your setup. Although you don't believe it, it might be the server itself, network between JMeter and server, or JMeter itself.

To find the source of problem, you'll need to have access to CPU, Disk IO and Network IO metrics for JMeter and Server.

Andrey Pokhilko

--
You received this message because you are subscribed to the Google Groups "jmeter-plugins" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jmeter-plugin...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Vincent Daburon

unread,
Sep 7, 2016, 4:06:16 AM9/7/16
to jmeter-plugins
Hi,
A solution is to use 2 or 3 JMeter slaves.
It's better to use 2 or 3 medium PC than 1 big PC

Because, with 1 PC you could have some network limitation (network connection in TIME_WAIT_STATE) or some limitation in JMeter like logs writing or synchronized classes.

4 000 requests/sec in 24 hours = 345 600 000 requests in one day, very huge !

Regards.
Vincent D.

Tarik Adnan

unread,
Sep 7, 2016, 4:24:53 AM9/7/16
to jmeter-...@googlegroups.com
Hi Vincent,

I will test this in distributed mode, but what will be the configuration in "Thread Group". I tried using "Synchronizing Timer" but it seems it doesn't work in distributed mode. So how can I achieve this in Distributed mode?
A detail explanation is much appreciated.

Regards,
Tarik Adnan

--
You received this message because you are subscribed to a topic in the Google Groups "jmeter-plugins" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jmeter-plugins/6PIAEGL8D2Y/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jmeter-plugins+unsubscribe@googlegroups.com.

Vincent Daburon

unread,
Sep 8, 2016, 4:56:01 AM9/8/16
to jmeter-plugins
Hi,

I use often the SteppingThredGroup to increase the number of threads
https://jmeter-plugins.org/wiki/SteppingThreadGroup/

Regards.
Vincent D.
To unsubscribe from this group and all its topics, send an email to jmeter-plugin...@googlegroups.com.

Tarik Adnan

unread,
Sep 8, 2016, 5:39:15 AM9/8/16
to jmeter-...@googlegroups.com
Hello Sir,

I have tried using "Throughput Shaping Timer" to achieve this scenario but still found around 1500~1800 requests(In Wire shark Trace) hitting the server in 1 second. But I want to see (In Wire shark Trace) 4000 requests are hitting in 1 second. Could you please provide me a sample Test Plan to achieve this scenario? or Can I achieve this scenario using 3 or 4 slaves in distributed mode.

Regards,
Adnan

To unsubscribe from this group and stop receiving emails from it, send an email to jmeter-plugins+unsubscribe@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to a topic in the Google Groups "jmeter-plugins" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/jmeter-plugins/6PIAEGL8D2Y/unsubscribe.
To unsubscribe from this group and all its topics, send an email to jmeter-plugins+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages