load testing with 1000's of threads and requests/sec

35 views
Skip to first unread message

Mark Tomlinson

unread,
Jan 25, 2022, 9:27:21 PM1/25/22
to mountebank-discuss
Hey friends - I'm doing some pretty massive load testing with 1000's of threads hitting Mountebank on a simple imposter with wait-behavior of 20 seconds.

In reality, as I ramp-up the load I notice at first that the imposter does indeed respond exactly at 20 seconds. That's great.

But as I add more-and-more load - it's taking up to 60-70 seconds for the imposter to respond to every request. It appears to me that node is queuing requests.

Are there options to scale node.js to handle more load?

Maybe run multiple containers behind nginx proxy?

-mt

Mark Tomlinson

unread,
Mar 9, 2022, 6:08:51 PM3/9/22
to mountebank-discuss
Welp - I learned a few things:

When you first initiate an HTTPS request via NGINX using a proxy_pass instruction...it will forward a "ping" to the upstream service during the initial TLS handshake.

This results in a 100 - Continue response back to the client, as designed.

If you have NGINX running front of a Mountebank imposter that has no predicates and a wait behavior of 20000 ms...

You get double the latency on your HTTPS calls through NGNIX + MOUNTEBANK! 

20 seconds on the initial TLS handshake/proxy_pass.
20 seconds on the ACTUAL http request.

Thanks for playing our game today!!

:)

Brandon Byars

unread,
Mar 14, 2022, 11:14:48 AM3/14/22
to Mark Tomlinson, mountebank-discuss
Thanks for reporting back on what the issue was!

--
You received this message because you are subscribed to the Google Groups "mountebank-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mountebank-disc...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/mountebank-discuss/c16670b7-7b8e-4620-b02e-45b1b95faa35n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages