Graham,

Sorry for the ambiguity. With worker MPM, the max number of process is the max number of threads divided by the number of thread per process. My config is :

# worker MPM
# StartServers: initial number of server processes to start
# MaxClients: maximum number of simultaneous client connections
# MinSpareThreads: minimum number of worker threads which are kept spare
# MaxSpareThreads: maximum number of worker threads which are kept spare
# ThreadsPerChild: constant number of worker threads in each server process

<IfModule worker.c>
MaxClients       245
StartServers     1
MinSpareThreads  5
MaxSpareThreads 10
ThreadsPerChild 35
</IfModule>

In our case that means that one process can handle 35 requessts and normally we have only one httpd slave running.

After mod_python receives a signal like KILL or SEGV (in fact anything except TERM or HUP if I am right, you can test with kill command), I have 8 httpd slave processes and the following message in main Apache error log file :

[error] server reached MaxClients setting, consider raising the MaxClients setting

The only solution is to stop and start (not graceful restart) Apache.

Cheers,

Michel

--On lundi 21 novembre 2005 19:28 -0500 Graham Dumpleton <[EMAIL PROTECTED]> wrote:

Michel Jouvin wrote ..
Hi,

I recently installed mod_python 3.2b5 on Apache 2.0.54. I am running with
problems if httpd slave process segfaults or is killed. In this case,
master process restart the max number of processes/threads. We are
running Apache with the MPM worker (on Tru64 platform).

This behaviour appears only if mod_python is loaded into Apache. this
doesn't seem to be related to mod_python usage : this can happen if you
load mod_python even if no URL is configured to use it. You can easily
reproduce the problem by doing 'kill -KILL' of an Apache slave process.

Is it a known issue ? Are they any workaround ?

What settings do you have in Apache config for:

<IfModule worker.c>
# StartServers         2
StartServers         1
MaxClients         150
MinSpareThreads     25
MaxSpareThreads     75
ThreadsPerChild     25
MaxRequestsPerChild  0
</IfModule>

Can you then relate your problem to your configuration with actual
numbers?

Note that with "worker" configuration, there isn't generally a
MaxSpareServers or MinSpareServers setting as I understand, that is for
prefork only.

<IfModule prefork.c>
StartServers         5
MinSpareServers      5
MaxSpareServers     10
MaxClients         150
MaxRequestsPerChild  0
</IfModule>

So not sure when you say that it creates maximum number of processes
what you are exactly talking about. I might expect it to create number
of processes as specified by StartServers.

Thus, can you please clarify.

Graham



    *************************************************************
    * Michel Jouvin                 Email : [EMAIL PROTECTED] *
    * LAL / CNRS                    Tel : +33 1 64468932        *
    * B.P. 34                       Fax : +33 1 69079404        *
    * 91898 Orsay Cedex                                         *
    * France                                                    *
    *************************************************************


Reply via email to