On 2016-04-14 22:05, Rainer Jung wrote:
> 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 <[email protected]> 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.
> 

Hi Rainer,

Thanks for the hint!
(indeed without -k I can simulate the svnstat tool that pulled my svn servers 
down)

I've done some tests with 2.4.19 there is maybe an interesting detail.
With 2.4.19 the last request is empty for an idle worker, with 2.4.20 not 
(shows the client, proto, Vhost and request)

I've attached the results as .txt file.

-- 
olli
httpd some seconds after start:
---------------------------------------------
Server MPM: event
Server Built: Apr 14 2016 22:02:14

Current Time: Thursday, 14-Apr-2016 22:03:24 CEST
Restart Time: Thursday, 14-Apr-2016 22:03:08 CEST
Parent Server Config. Generation: 1
Parent Server MPM Generation: 0
Server uptime: 16 seconds
Server load: 1.21 0.69 0.66
Total accesses: 0 - Total Traffic: 0 kB
CPU Usage: u0 s0 cu0 cs0
0 requests/sec - 0 B/second -
1 requests currently being processed, 74 idle workers

PID     Connections     Threads Async connections
total   accepting       busy    idle    writing keep-alive      closing
56486   0       yes     0       25      0       0       0
56487   0       yes     0       25      0       0       0
56488   0       yes     1       24      0       0       0
Sum     0               1       74      0       0       0



during ab test
---------------------------------------------
Current Time: Thursday, 14-Apr-2016 22:04:14 CEST
Restart Time: Thursday, 14-Apr-2016 22:03:08 CEST
Parent Server Config. Generation: 1
Parent Server MPM Generation: 0
Server uptime: 1 minute 6 seconds
Server load: 12.23 3.14 1.53
Total accesses: 7868 - Total Traffic: 1.8 MB
CPU Usage: u86.8047 s1.15625 cu0 cs0 - 133% CPU load
119 requests/sec - 28.2 kB/second - 242 B/request
78 requests currently being processed, 97 idle workers

PID     Connections     Threads Async connections
total   accepting       busy    idle    writing keep-alive      closing
56486   4       yes     1       24      0       0       0
56487   7       yes     7       18      0       0       0
56488   10      yes     8       17      0       0       1
56506   10      yes     3       22      0       0       7
56560   25      yes     24      1       0       0       1
56561   5       yes     14      11      0       0       0
56562   8       yes     21      4       0       0       0
Sum     69              78      97      0       0       9



some time after ab finished
---------------------------------------------
Current Time: Thursday, 14-Apr-2016 22:06:59 CEST
Restart Time: Thursday, 14-Apr-2016 22:03:08 CEST
Parent Server Config. Generation: 1
Parent Server MPM Generation: 0
Server uptime: 3 minutes 51 seconds
Server load: 1.17 2.09 1.39
Total accesses: 10011 - Total Traffic: 2.5 MB
CPU Usage: u109.742 s1.46094 cu0 cs0 - 48.1% CPU load
43.3 requests/sec - 10.9 kB/second - 257 B/request
1 requests currently being processed, 174 idle workers

PID     Connections     Threads Async connections
total   accepting       busy    idle    writing keep-alive      closing
56486   0       yes     0       25      0       0       0
56487   0       yes     1       24      0       0       0
56488   0       yes     0       25      0       0       0
56506   0       yes     0       25      0       0       0
56560   0       yes     0       25      0       0       0
56561   0       yes     0       25      0       0       0
56562   0       yes     0       25      0       0       0
Sum     0               1       174     0       0       0






2.4.20 with patch:
--------------------------
Srv     PID     Acc     M       CPU     SS      Req     Conn    Child   Slot    
Client  Protocol        VHost   Request
0-0     31501   0/125/125       R       35.96   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/122/122       _       35.96   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/132/132       R       35.96   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/125/125       _       35.56   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/126/126       _       35.56   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/122/122       _       35.96   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/126/126       R       35.96   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/129/129       R       35.96   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/132/132       R       35.96   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/132/132       _       35.56   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
0-0     31501   0/126/126       R       35.96   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
.....
6-0     31581   0/135/135       R       38.90   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0
6-0     31581   0/146/146       R       38.90   0       0       0.0     0.03    
0.03    $client         http/1.1        $host:443       GET /server-status/ 
HTTP/1.0




2.4.19
--------------------------
Srv     PID     Acc     M       CPU     SS      Req     Conn    Child   Slot    
Client  Protocol        VHost   Request
0-0     56486   0/43/43 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/50/50 _       13.37   160     0       0.0     0.01    0.01
0-0     56486   0/43/43 _       13.10   160     0       0.0     0.01    0.01
0-0     56486   0/47/47 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/49/49 _       13.37   160     0       0.0     0.01    0.01
0-0     56486   0/47/47 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/52/52 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/49/49 _       13.10   160     0       0.0     0.01    0.01
0-0     56486   0/49/49 _       13.09   160     0       0.0     0.05    0.05
0-0     56486   0/57/57 _       13.38   160     0       0.0     0.01    0.01
0-0     56486   0/50/50 _       13.37   160     0       0.0     0.01    0.01
0-0     56486   0/49/49 _       13.38   160     0       0.0     0.01    0.01
0-0     56486   0/53/53 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/46/46 _       13.37   160     0       0.0     0.01    0.01
0-0     56486   0/41/41 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/51/51 _       13.37   160     0       0.0     0.01    0.01
0-0     56486   0/44/44 _       13.10   160     0       0.0     0.01    0.01
0-0     56486   0/47/47 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/51/51 _       13.38   160     0       0.0     0.01    0.01
0-0     56486   0/47/47 _       13.38   160     0       0.0     0.01    0.01
0-0     56486   0/48/48 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/50/50 _       13.37   160     0       0.0     0.01    0.01
0-0     56486   0/45/45 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/45/45 _       13.11   160     0       0.0     0.01    0.01
0-0     56486   0/37/37 _       13.11   160     0       0.0     0.01    0.01
1-0     56487   0/65/65 _       17.50   160     0       0.0     0.01    0.01
1-0     56487   0/64/64 _       17.51   160     0       0.0     0.01    0.01
1-0     56487   0/63/63 _       17.50   160     0       0.0     0.01    0.01
1-0     56487   0/63/63 _       17.50   160     0       0.0     0.01    0.01
1-0     56487   0/59/59 _       17.50   160     0       0.0     0.01    0.01
1-0     56487   0/62/62 _       17.51   160     0       0.0     0.01    0.01
1-0     56487   0/66/66 R       17.51   0       0       0.0     0.01    0.01    
$client http/1.1        $host:443       GET /server-status/ HTTP/2
1-0     56487   0/66/66 _       17.50   160     0       0.0     0.01    0.01
1-0     56487   0/58/58 _       17.50   160     0       0.0     0.01    0.01
1-0     56487   0/66/66 _       17.51   160     0       0.0     0.01    0.01

Reply via email to