Reputation: 38
We are performing load testing via JMeter on our server. We are testing 2 load operations(Registration and Authentication). We have separate plans for both test-plans. Each test-plan consists of 2 HTTP Requests. After the first HTTP request, we are forming the response(using 3rd party jars) and forwarding it to the 2nd HTTP request.
Now, in the first load-operation(Registration), we are getting a throughput of ~10/sec.
But, we are getting 1.3/sec of throughput in the second operation(Authentication).
We are using the exact configurations for both operations. We tried increasing the HEAP size for JMETER and still, we are achieving the same throughput. We can use distributed testing as last resort, but we want to know the root cause of the problem.
Upvotes: 2
Views: 795
Reputation: 168002
The issue could be in using Beanshell as its performance might be a big question mark especially when it comes to high loads.
Since JMeter 3.1 it is recommended to use JSR223 Elements and Groovy language for scripting so consider migrating to the JSR223 PostProcessor as soon as possible.
See Apache Groovy - Why and How You Should Use It article for detailed explanation, benchmark, Groovy usage hints, etc.
Upvotes: 0
Reputation: 34516
what makes you think it’s a jmeter problem and not an issue with response time of your second request which lowers throughput ?
You should show thread group.
To ensure you obtain the expected throughput potentially crashing the slow second request :
use this component https://jmeter-plugins.org/wiki/ThroughputShapingTimer/
ensure you read doc and set enough threads
organize your plan so that it looks like this (Request 1 and 2 being children of simple controller)
Thread group
|-Throughput shaping timer
|-Simple Controller
|-Request 1
|-Request 2
Upvotes: 1