Another thing to consider is how much network bandwidth you are using. If each 
request is returning 100K in data, your 25 rps rate is ~2.5MB per second (which 
is ~25 M bits per second). Depending on your network interface and 
infrastructure that could be a fraction of the available bandwidth or all of 
it. Keep in mind, your are limited by the slowest hop in the network.

For example, we test on a separated and isolated network switch that has 2Gbps 
of total throughput. But we have several machines on that switch (all part of 
our test) and they have to share the 2Gbps between themselves. Moreover, each 
machine has only a 1Gbps NIC. That is generally more than enough for our 
testing, so we aren't usually constrained by network capacity. 

However, If we tried to run this same test to our production system, even 
though those servers have much higher capacities than our test environment, our 
internal network has only our 25Mbps ISP connection to the Internet (which is 
shared by the whole company), and we'd be throttled by that connection to our 
production servers (which are in a hosting facility in a different city). So 
even though our test environment is not nearly as beefy as our production 
setup, our tests to the production systems would be much slower because of the 
limited network capacity. 

Also, the fact that  the Internet connection is shared with people who are not 
part of the test means that we would get widely varying results depending on 
what other people are doing when we fire up a test (for example, downloading 
updates to Windows or streaming movies/music). But in our test environment we 
share the network only with our own test servers, so we can control that 
variable during testing.

Another thing to check is how much your load generator is recording during the 
tests. We have a tree listener in our test plans, but we found that if we 
record "all" responses, the our Jmeter load generation is severely reduced. 
Moreover, it degrades even further the longer the test runs. However, if we use 
the tree listener to only record "errors" instead of everything, it works 
without interfering in the test, and we still get enough information to figure 
out what broke when something goes wrong. (Although I'd still like to see a 
feature to record the whole thread when any iteration of the thread has a 
failure.)

The best thing to remember is that you are testing a "system", and it is 
constrained by the most limited part during your test. Figuring out which part 
is the bottleneck is all the fun...

--
Robin D. Wilson
VOICE: 512-777-1861



On May 23, 2013, at 4:34 AM, Adrian Speteanu <asp.ad...@gmail.com> wrote:

Hi,

Not being able to achieve target throughput is not always related to things
that are wrong on the test client (considering that 25 rps seems rather low
), but rather with applications deployed in a state that is not ready to
handle the generated traffic. The advise below is very good, so that you
eliminate common/obvious mistakes client-side. But I also suggest you keep
an eye for possible application & setup specific problems.

Cheers,
Adrian S

On Thu, May 23, 2013 at 12:30 AM, Shmuel Krakower <shmul...@gmail.com>wrote:

> Things you may try:
> 1. Remove the Throughput controller and see what happens.
> 2. Add more threads and see what happens.
> 3. Is your load machine is overkilled (CPU at 100%, etc...)?
> 4. If all above leaves you with same limit of about 25MPS it might be the
> target service which cannot handle anymore load. Try:
> a. Running at the same time, the same load from another machine and see if
> you get to 50MPS in total or still you get about 25...
> b. Look into the service under load and try to figure out what is the
> bottleneck
> c. Maybe something else between the two machines which runs JMeter and the
> Service is limiting you? (i.e. internet connection limits)
> 
> 
> 
> Shmuel Krakower.
> www.Beatsoo.org - re-use your jmeter scripts for application performance
> monitoring from worldwide locations for free.
> 
> 
> On Wed, May 22, 2013 at 6:48 PM, Sameera Rao P <samee...@techmahindra.com
>> wrote:
> 
>> Hi
>> 
>> I Am using soap sample xml / RPC and trying to post ebxml messages. I am
>> not able to achieve my load of 100 Messages Per second running from GUI.
>> I tried using constant throughput timer with 15 threads ,but still not
>> able to go beyond 25MPS. Can you please suggest the solution for
>> achieving the load
>> 
>> Thanks & Regards
>> Sam
>> 
>> 
>> 
> ============================================================================================================================Disclaimer:
>> This message and the information contained herein is proprietary and
>> confidential and subject to the Tech Mahindra policy statement, you may
>> review the policy at <a href="
> http://www.techmahindra.com/Disclaimer.html
>> ">http://www.techmahindra.com/Disclaimer.html</a> externally and <a
> href="
>> http://tim.techmahindra.com/tim/disclaimer.html";>
>> http://tim.techmahindra.com/tim/disclaimer.html</a> internally within
>> Tech
>> 
> Mahindra.============================================================================================================================
>> 
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org
>> For additional commands, e-mail: user-h...@jmeter.apache.org
>> 
>> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@jmeter.apache.org
For additional commands, e-mail: user-h...@jmeter.apache.org

Reply via email to