<IfModule peruser.c>
    # Multiplexer pool
    MinMultiplexers 10
    MaxMultiplexers 20
    Multiplexer nobody nogroup
#    ProcessorWaitTimeout 2 10
    ProcessorWaitTimeout 5 20

    # Fork limits
    ServerLimit 200
    MaxClients 200
    MaxRequestsPerChild 1000

    # Processor defaults
    MinProcessors       15
    MinSpareProcessors  3
    MaxProcessors 2000
#    MaxProcessors 500

    # Timeouts
    IdleTimeout 60
    ExpireTimeout 300
</IfModule>

Ofc, the vhosts then had the relevent ServerEnvironment entries, and the
server 
environments themselves just consisted of a user/group/chroot params,
nothing else. The 
users themselves had no ulimits or /etc/security/limits.conf tied to them.

The testing tool used was ab and siege against a static image file. I then
tried on a php 
file, and got a much higher percentage failure rate.

The specs of the machine are


MemTotal:      4062632 kB
MemFree:        367480 kB


model name      : Intel(R) Xeon(R) CPU            3065  @ 2.33GHz
address sizes   : 36 bits physical, 48 bits virtual
bogomips        : 4670.54

model name      : Intel(R) Xeon(R) CPU            3065  @ 2.33GHz
address sizes   : 36 bits physical, 48 bits virtual
bogomips        : 4667.04

Original Message:
-----------------
From: Janno Sannik [email protected]
Date: Mon, 21 Sep 2009 00:08:16 +0300
To: [email protected]
Subject: Re: [peruser] Peruser 0.4.0 beta 1


Also give us your peruser configuration part and vhost configuration 
part from apache conf.

Janno

On 20.09.2009 22:54, Cal Leeming wrote:
> Hi all,
>
> I've come across an extremely nasty bug in the mpm-peruser. It's caused
> so many problems, that I've had to drop it from our production servers.
> It would appear, that in a load test of 5000 requests on a static file,
> half of the requests are being 503'd...
>
> For a small server, it's good, but for a large scale production, it's
> not cutting it :(
>
> Anyone have any idea why this might be?
>
> Cal
>
> Andrew wrote:
>    
>> Further to my other bug report, multiplexers also segfault after
>> MultiplexerIdleTimeout has expired leaving 0 running multiplexers even
>> though MinMultiplexers 3 is set in the httpd.conf. 0 multiplexers = no
>> pages served so I count this as a very serious bug.
>>
>> Thanks.
>>
>> On 10 Sep 2009, at 10:25, Taavi Sannik wrote:
>>
>>
>>      
>>> Peruser 0.4.0 beta 1 is now available at
>>> http://www.peruser.org/trac/projects/peruser/wiki/PeruserDownload
>>>
>>> Changes since 0.3.0 should include:
>>> - dc3 patch integration:
>>>      - multiplexer pool support
>>>      - processor busy timeout support
>>>      - new<Processor>  directive
>>>      - multiplexer mutexes and processor dontwait patch from Lazy.
>>>      - other fixes
>>> - FreeBSD 7.2 support
>>> - Better configuration validation:
>>>      - if no ServerEnvironment has been set on a VirtualHost, then
>>> multiplexer will respond with "500 Internal Server Error" and write an
>>> error to logfile (instead of seg faulting)
>>> - SSL NameVirtualhost support (from Lazy)
>>> - In order to make the Lazy's multiplexer mutex patch work and avoid
>>> confusion/mistakes in the configuration files, the Multiplexer
>>> directive
>>> has now been deprecated. The user/group values for Multiplexer are now
>>> set by User and Group directives in the main configuration file (these
>>> should already exist in every Apache environment). To set
>>> multiplexer's
>>> chroot, you should now use MultiplexerChroot. The old Multiplexer
>>> directive is still valid, but it will show a warning and ignores the
>>> user/group values (chroot should still be set though).
>>> - if the multiplexer cannot pass the request to the processor, then it
>>> will respond to the client with error "503 Service unavailable" (only
>>> works when multiplexer isn't directly passing the socket, eg when
>>> SSL is
>>> not enabled and NameVirtualhost is set).
>>> - configuration should be fully backwards compatible with peruser
>>> 0.3.0
>>> (before dcX) (thanks to Lazy)
>>> - reduced log clutter by not displaying the same error message
>>> multiple
>>> times:
>>>      - if multiplexer cannot pass the request multiple times in a row,
>>> then it will warn the user only once
>>>      - if processor cannot write it's PID to cgroup tasks file multiple
>>> times in a row, then it will warn the user only once
>>>      - if multiplexer cannot find a server environment for a
>>> virtualhost, then it will warn the user only once (per virtualhost)
>>>
>>>
>>> Cheers,
>>>
>>> -- 
>>> Taavi Sannik
>>> DataCode OY
>>>
>>>
>>> _______________________________________________
>>> Peruser mailing list
>>> [email protected]
>>> http://www.telana.com/mailman/listinfo/peruser
>>>
>>>        
>> _______________________________________________
>> Peruser mailing list
>> [email protected]
>> http://www.telana.com/mailman/listinfo/peruser
>>
>>
>>      
> _______________________________________________
> Peruser mailing list
> [email protected]
> http://www.telana.com/mailman/listinfo/peruser
>    

_______________________________________________
Peruser mailing list
[email protected]
http://www.telana.com/mailman/listinfo/peruser


--------------------------------------------------------------------
myhosting.com - Premium Microsoft® Windows® and Linux web and application
hosting - http://link.myhosting.com/myhosting


_______________________________________________
Peruser mailing list
[email protected]
http://www.telana.com/mailman/listinfo/peruser

Reply via email to