[peruser] multiplexer freeze

cronfy cronfy at sprinthost.ru
Tue Nov 10 10:52:47 MST 2009


Hello.

I installed peruser with 0.4.0 + 0.4b1 patches under FreeBSD 7.2/amd64. 
This is a more than medium loaded server. It has a bit less than 600 
virtual hosts.

When I start apache, everything works fine for several minutes. But then 
all multiplexers get freezed one by one with so_snd state. The following 
'top' output was made when a few vhosts had been working still, but most 
of them were already freezed. 'peruser' is the name of httpd binary (I 
renamed it to distinguish from our working apache).

97363 root          1  65    0   121M 37968K select 3   0:04  0.00% peruser
23225 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
99527 www           1  20    0   121M 38108K lockf  0   0:00  0.00% peruser
23226 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23421 www           1  20    0   121M 38108K lockf  2   0:00  0.00% peruser
23441 www           1  20    0   121M 38108K lockf  2   0:00  0.00% peruser
23470 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23445 www           1  20    0   121M 38108K lockf  1   0:00  0.00% peruser
23455 www           1  44    0   121M 38108K so_snd 3   0:00  0.00% peruser
23450 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23426 www           1  20    0   121M 38108K lockf  2   0:00  0.00% peruser
23430 www           1  44    0   121M 38108K select 1   0:00  0.00% peruser
23460 www           1  44    0   121M 38108K so_snd 0   0:00  0.00% peruser
23432 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23454 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23429 www           1  44    0   121M 38108K so_snd 0   0:00  0.00% peruser
23467 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23451 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23466 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23468 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
97502 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23405 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23453 www           1  44    0   121M 38108K so_snd 3   0:00  0.00% peruser
23440 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23458 www           1  44    0   121M 38108K so_snd 3   0:00  0.00% peruser
23469 www           1  44    0   121M 38108K so_snd 0   0:00  0.00% peruser
23413 www           1  44    0   121M 38108K so_snd 0   0:00  0.00% peruser
23463 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23437 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23444 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23439 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23442 www           1  44    0   121M 38108K so_snd 3   0:00  0.00% peruser
23433 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23418 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23436 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23462 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23401 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23457 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23456 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23465 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23224 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23434 www           1  44    0   121M 38108K so_snd 0   0:00  0.00% peruser
23448 www           1  44    0   121M 38108K so_snd 3   0:00  0.00% peruser
23427 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23461 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23438 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23428 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23452 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23459 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23417 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23422 www           1  44    0   121M 38108K so_snd 0   0:00  0.00% peruser
23404 www           1  44    0   121M 38108K so_snd 1   0:00  0.00% peruser
23449 www           1  44    0   121M 38108K so_snd 3   0:00  0.00% peruser
23464 www           1  44    0   121M 38108K so_snd 0   0:00  0.00% peruser
23447 www           1  44    0   121M 38108K so_snd 0   0:00  0.00% peruser
23425 www           1  44    0   121M 38108K so_snd 2   0:00  0.00% peruser
23431 www           1   4    0   121M 38108K sbwait 0   0:00  0.00% peruser


There are no messages neither in error.log, nor in /var/log/messages. 
Ktrace on these processes gives nothing (zero length of ktrace.out). I 
do not meet this freezing when there is only one virtual host, but 
probably I just have to wait longer...

Here is my configuration:

 # Multiplexer pool
 MinMultiplexers 50
 MaxMultiplexers 100
 ProcessorWaitTimeout 3 10

 # Fork limits
 ServerLimit 1024
 MaxClients 200
 MaxRequestsPerChild 1000

 # Processor defaults
 MinProcessors       0
 MinSpareProcessors  0
 MaxProcessors       10

 # Timeouts
 IdleTimeout 30
 ExpireTimeout 0

Every Processor directive just defines User and Group, nothing else.

What further information can I provide to help one diagnose this behavior?

Thanks in advance.


More information about the Peruser mailing list