0
votes

I tried 500 users with 100 Ramp up/Hatch rate per seconds. The load generated was monitored for tomcat using JConsole.

For same set of request JMeter requests were using 100-80% CPU usage where as locust was around 60-30% CPU usage.

I wanted to get the bottle-neck for the server how many maximum request it can server. Can i simulate same using locust I tried setting min-max-wait to 0 but no use.

I tried 1000 concurrent users in locust but the RPS was same. Using Jmeter i was able to find that the RPS more that this is supported by my server. RPS value by locust gives 160 where as JMeter gives 250 which is huge difference.

Locust can't generate load on my tomcat server.

Can any one please help me to explain what i am missing to simulate the load similar to JMeter.

Thanks in Advance

2
How did you setup min_wait and max_wait values?user7294900
class WebsiteUser(HttpLocust): task_set = WebsiteTasks min_wait = 10 max_wait = 100lAH2iV

2 Answers

0
votes

Looking into Locust Issue # 464 my expectation is that Locust doesn't consider so called "embedded resources", to wit images, scripts, styles, fonts, etc. which actually generate lots of extra asynchronous requests and produce the main load.

Check what exact requests are being sent by Locust and JMeter using either Tomcat access log or a sniffer tool like Wireshark - the requests should be the same in terms of amount/nature. Ideally they also should match the requests which are being sent by real user using real browser.

0
votes

Follow @aldenpeterson-wf suggestion of setting min_wait and max_wait with 1000 ms to get rate per second

Have you looked at min and max wait? Setting them to both be 1000 (ms) would result in locust making 1 request/sec per client which seems to be exactly what you are looking to do.