What the speed of during, after I use during, my qps(Req/s) become low

Hi, I use the galting like this:

val writeDataScn = scenario(“writeToHBase”)
.feed(writedata)
.repeat(1000) {
exec(HBaseBuilder)
}

and my user is 5000, the qps can be 6000.
but, when I change to this:

val writeDataScn = scenario(“writeToHBase”)
.feed(writedata)
.during(600 seconds) {
exec(HBaseBuilder)
}

and my user is also 5000, the qps(Req/s) just become 1200. What is wrong? Does the during method send request very slowly? I am new in gatling, and I want to know why my qps is falling so hard

The HBaseBuilder is protocal I defined myself

Hi Wei,

What version of Gatling are you using ?
What does your injection profile looks like ?
As during does not constrain the number of times your request is executed, it could be that there’s something in your custom protocol, or elsewhere, that slows down the your simulation, one little bit at a time (a memory leak for example).

Cheers,

Pierre

Thanks Pierre,
I am using Galting2.3
And my injection is like this:
setUp(writeDataScn.inject(ramp(5000 users).over(50 seconds)))

I just want to know if the during does not constrain the number of times my request is executed, then how the gatling know the time to send the second request after the first request finished.

Hi Wei,

There have been a lot of fixes since 2.0 M3a, and some of them on during.
Could you update to 2.0.0-RC2 ? There is a dedicated migration guide for migration from 2.0.0-M3a to 2.0.0-RC1/RC2 : http://gatling.io/docs/2.0.0-RC2/project/migration_guides/2.0.0-M3a-to-2.0.0-RC2.html#m3a-to-2-0-rc2

And to answer your question, during does not constrain the number of times the request is executed, meaning a lot of users are hitting your HBase at the same time.
If there is a process that happens to answer right away but does some background work after, this would mean that you would hit your HBase continuously while it has some work to do, which would accumulate over the 600 seconds of your during loop.