httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bjørn Stabell <bj...@exoweb.net>
Subject Re: mod_proxy_balancer connection pool limitation problem
Date Sun, 02 Apr 2006 15:16:23 GMT
Hi Ruediger,

On Apr 2, 2006, at 22:54, Ruediger Pluem wrote:
> On 04/02/2006 04:46 PM, Bjørn Stabell wrote:
>>     <VirtualHost *:80>
>>             ProxyPass       /zope   http://192.168.0.242:7680/   
>> max=2 timeout=1 acquire=1 ttl=1
>>     </VirtualHost>
>>
>> I'm using mpm-worker, both machines are Linux machines.
>>
>> I thought Apache would make no more than 2 connections to the backend
>> server, but lsof on the backend server shows something else:
>
> The cache limit is per httpd process. How many httpd processes are  
> running?
> What mpm are you using?
> Can you check if there are really more than 2 connections per httpd  
> process
> on the frontend?
>
>>     # lsof -i :7680 | wc -l
>>     121
>
> Are you sure that all of these connections are established? Could  
> you also check
> netstat -an | egrep ":7680.*ESTABLISHED"?

I'm running mpm-worker with config:

<IfModule mpm_worker_module>
     StartServers          2
     MaxClients           128
     MinSpareThreads      25
     MaxSpareThreads      75
     ThreadsPerChild      64
     MaxRequestsPerChild   0
</IfModule>


# /nb/apache-2.2/bin/httpd -l
Compiled in modules:
   core.c
   worker.c
   http_core.c
   mod_so.c


This should give 2 processes, each with 64 threads, right?  At the  
peak, 64 connections are established with the backend:

# netstat -an | egrep ":7680.*ESTABLISHED" | wc -l
64


Btw, since the number of processes is rather indirect with the advent  
of mpm-worker, and since most people would be most interested in  
limiting the total number of connections to the backend (to spare the  
backend), wouldn't it make more sense to limit the total number?

Btw2, it wasn't very clear from the docs at http://httpd.apache.org/ 
docs/2.2/mod/mod_proxy.html that they were per-process maximums.  I  
think most people will read "Apache will never create more than the  
Hard Maximum or max connections to the backend server." as meaning  
max across all processes and threads.

Rgds,
Bjorn
Mime
View raw message