On 12/06/17 20:27, Piyush Kumar Nayak wrote:
> Thanks, Mark.
> I have been testing with 100 concurrent users. While the executor had the 
> maxThreads set to 150, the connector without the executor was left to the 
> default value (which should be 200). I did not have the 
> disableKeepAlivePercentage attribute set, which means that it should take to 
> the default value of 75.
> 
> So, the number of threads in use before the keepalive is disabled in case of 
> non-executor connector should be 150. At 100 users, the no. of clients is at 
> 50% of the maxThread count. Unless I'm missing something here, I don't see 
> why keep-alive would be disabled.
> I'd appreciate if you can give me some pointers on how you can tell if 
> requests are processed at the server end with keep-alive.

I suggest you use ab rather than JMeter. I've seen all sorts of odd
behaviour with JMeter when processing requests very quickly that I
haven't seen with ab. Also, ab tells you how many of your requests used
keep-alive.

Mark


> 
> I'll try setting disableKeepAlivePercentage to 100, and see if that improves 
> the performance.
> 
> -----Original Message-----
> From: Mark Thomas [mailto:ma...@apache.org] 
> Sent: Thursday, June 08, 2017 7:13 PM
> To: Tomcat Users List <users@tomcat.apache.org>
> Subject: Re: Tomcat 8/NIO performance discrepancies
> 
> On 07/06/17 22:28, Mark Thomas wrote:
> 
> <snip/>
> 
>> I'm still seeing significant differences in BIO with and without an 
>> executor.
>>
>> I'm still looking for the root cause. I have noticed that without an 
>> executor I see far fewer keep-alive requests than I'd expect. That 
>> could explain the difference, or some of it at least.
> 
> Further testing indicates that most, if not all, of the performance 
> difference is down to the fewer number of requests processed using HTTP 
> keep-alive. This is because BIO without an executor is subject to 
> disableKeepAlivePercentage whereas BIO with an executor is not.
> 
> If the number of concurrent clients is kept below 75% of maxThreads, 
> performance remains very similar.
> 
> The problems you are likely to experience in the real world without 
> disableKeepAlivePercentage (i.e. if you use BIO with an executor) are 
> described in this thread:
> 
> https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftomcat.markmail.org%2Fthread%2Fmcfdk2273v2fsh5k&data=02%7C01%7C%7C6816158122aa4914b20208d4ae744a1e%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C636325261860429837&sdata=8t1j6lxgc3aTCDq45mXbH7LqedtIuRgPsrgqUKXyCrc%3D&reserved=0
> 
> The better tuning options are probably:
> - increase maxThreads to max expected client concurrency + headroom
>   or if your memory/CPU won't permit that, as high as you can
> - increase disableKeepAlivePercentage
> 
> I'll look at BIO vs NIO next.
> 
> Mark
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org
> 


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

Reply via email to