We're using Apache 2 to serve big files generated by php or cgi
shell-script.
Apache 2 is configured to use prefork MPM.
It runs on a Linux RedHat 9.0, P200 with 128MB.
We're facing a problem:
Each child process memory size grows proportionnaly to the amount of data
transferred.
For example, if we transfer a 130MB file, the Apache child process then uses
more than 100MB of memory.
The size of each child process then decreases *very* slowly.
Obviously, after 2 file transfers of >100MB each, the machine starts
swapping, until it crashes.
We tried to use the "MaxMemFree" configuration directive (even if I did not
precisely understood its meaning).
When set to values like 100 or 1000 (kilobytes according to the
documentation), nothing changes.
When set to 1 or 2, then the child process frees its memory at the end of
each transaction, but *keep* growing during the transaction.
Under Apache 1.3.x, the behavior was different: no child process memory size
grew like that.
Did anyone faced the same problem ?
How to set correctly the "MaxMemFree" directive ?
Is there some other directive I missed ?
Thanks for your help,
Chris.
So you are probably using 2.0.40? If so, you should upgrade to the latest
release (2.0.46) and I bet the problem will go away. Earlier releases of
apache 2 would queue up the entire request in order to determine the
content-length.
JOshua.
application/x-httpd-php php
must be added to /usr/local/apache/conf/mime.types
"Joshua Slive" <goo...@slive.ca> a écrit dans le message de
news:916ecaf4.03070...@posting.google.com...
Chris.
No. The bug you posted to is almost certainly win32 specific.
As I said, you need to start by upgrading to the most recent apache.
Joshua.
> As I said, you need to start by upgrading to the most recent apache.
>
As I said, I already did. I use 2.0.46.
Chris.
I missed that part, sorry.
But if you are going to report a memory leak, you need to be extremely
specific about your system. You haven't said what modules you are using,
what changes you have made from the default config, etc.
Joshua.