View Single Post

  #3 (permalink)  
Old 05-09-2006
Francis Galiegue
 
Posts: n/a
Default Re: Apache 2.0: lack of listeners

HansH wrote:
> "Francis Galiegue" <fgaliegue@gmail.com> schreef in bericht
> news:1147086002.170834.72780@g10g2000cwb.googlegro ups.com...
> > I have a problem with Apache 2.0.46, packaged by RedHat for its EL3,
> > and the number of requests it can handle, or at least I think the
> > problem lies there.

> Share with us the error_log lines that stems for this idea.
>


That's the trouble: there isn't any. What I do see in the ip-label
report though is that some static objects are not delivered on time. I
couldn't establish a relationship yet between the missing objects and
the access_log, that's the point I'm looking at right now.

> > I have made a simple test: my firewall, based on iptables, can tell me
> > how many connections there were to port 443 during a period of time, so
> > I reset the counter, counted the lines in the access_log, slept for 15
> > minutes and then displayed the iptables counter and the number of lines
> > in the access_log again: each time, there are more connections to port
> > 443 than there are new lines in the access_log (approx. 30 to 50).
> > Which is why I believe Apache is misconfigured. The trouble is, nothing
> > at all shows in the error logs...

> In theory one can make a connection without issuing a request.
> Without making a request, there is nothing apache will ever log.
>
> On the other hand one can issue a series of requests on a single connection
> ...
>


I suppose that's what the MaxRequestPerChild means?

> Did you count _unique_ IP adresses?
>


No, that's right. I'll do it at the firewall level as well and try and
compare this with error_log. Good idea!

> [snipped]
> > About the httpd.conf: I don't see the prefork or worker module inserted
> > anywhere via a LoadModule, does that mean that these settings are
> > totally ignored, or is at least the prefork module built-in?

> http://httpd.apache.org/docs/2.0/mpm.html
> MPMs must be chosen during configuration, and compiled into the server.
> Compilers are capable of optimizing a lot of functions if threads are used,
> but only if they know that threads are being used.
> To actually choose the desired MPM, use the argument --with-mpm=NAME with
> the configure script. NAME is the name of the desired MPM.
>
> Once the server has been compiled, it is possible to determine which MPM was
> chosen by using ./httpd -l. This command will list every module that is
> compiled into the server, including the MPM.
>


Thanks for the tip! httpd -l does show prefork module built in.

> > I do see
> > several Apache processes forking on startup... I've read numerous
> > documents about performance settings, but I still don't know what
> > setting to modify. I'd guess some candidates would be StartServers,
> > MinSpareServers and MaxSpareServers, but then they're in an <ifmodule>
> > which I don't even know whether it's used at all :(

>
> A better one to fiddle might be 'maxclients'; your error_log may even refer
> to it.
>


As stated above, nothing in the logs, that's the real trouble :(