Am 14.04.2016 um 22:05 schrieb olli hauer:
On 2016-04-14 21:48, Yann Ylavic wrote:
On Thu, Apr 14, 2016 at 9:40 PM, olli hauer <oha...@gmx.de> wrote:
I've done a quick test with
  $ ab -n 10000 -c 100 $host/$url

During the test the count of idle worker are incrementing and decrementing but 
it ab has finished the requests the count of idle workers stays on the last 
highest count ...

This looks normal to me, did the bahaviour changed w.r.t. 2.4.19?

When the stress is running, the number of idlers (workers that do
nothing) fluctuates, according to the number of connections/requests
and children created to sustain the load.

When the load stops, the number of idlers increases, and won't
decrease unless MaxSpareThreads is reached (i.e. children are stopped,
each releasing ThreadsPerChild idlers).


Ah, OK this will explain the numbers.
Unluckily I haven't looked to scoreboard with 2.4.19, but give me some minutes 
...

Not that important for the current discussion, but please note that "ab" does not use Keep-Alive connections by default. If you want to use HTTP Keep-Alive, add "-k".

Without it you create many new connections per second (depending on throughput this can easily be more than 1000 connections per second) which are only used very shortly (one request) and after shutting down they might end up in TIME_WAIT and stay there e.g. for a minute depending on OS details (you can check via "netstat"). Once you get more than a few thousand connections in TIME_WAIT, TCP/IP could get slower. Thus "ab -k" will often result in more stable behavior.

Regards,

Rainer

Reply via email to