I have total 8 API Request configured to run tests including 5 GET requests and 3 POST requests. When I running this test with 300 concurrent users with 1 min ramp-up time, after a few seconds server utilized 100%. So I want to know that is there any way to monitor which API request consumes more CPU and RAM?
3 Answers
JMeter treats the system as a "black box", if you think that one request is consuming more resources than others you can try to run the requests separately.
If for some reason you cannot split the test to run API request independently you can consider using a profiler tool on server side in order to check which request is to blame.
Additionally you can use Active Threads Over Time, Transactions per Second and Response Times Over Time charts in order to correlate the increasing load with other metrics. The aforementioned charts can be installed using JMeter Plugins Manager
Please refer below blogs from blazmeter and dzone.com which explains on same topic. Below are some urls.
https://github.com/tilln/jmeter-sshmon
https://dzone.com/articles/how-to-monitor-server-resource-utilization-with-jm
You can use PerfMon Server Agent
JMeter Plugin to monitor server CPU, Memory usage during Load Test.
Follow the guideline mention on BlazeMeter blog
-
1Thanks, NarendraR. I'm already using the
PerfMon Server Agent
plugin to monitor server usage during in test. But, I want to that which request to consume more resource.– BhavinD.Mar 17, 2020 at 5:51