Hello All, I have three web servers which periodically crash due to
Apache using up all of the RAM on the server. No matter how much RAM we
put in, it always happens. Currently, there’s 16GB of RAM on each
server running Linux x86_64. Watching top, and the RSS of the Apache processes constantly
grow. When Apache first starts, the average RSS is 20MB per
process. Within an hour or so, it’s 128MB per process. Do the
math, and at 200 processes that’s 25GB. We’ve imposed memory limits in PHP, we use RLimitMEM
in Apache (both are set to 128M). I even wrote a Perl script which runs
continuously checking all Apache processes that kills individual children if
they go over 80MB for their RSS value. What’s interesting is that
when the average RSS hits 80MB and my script kills everything, the RSS value
resets back to 20MB and the process starts over again. Apache has PHP 5.2.5 compiled in as a DSO module using
Apache 2.2.3. The server is an Intel Xeon 5300 sequence server using the
Linux kernel 2.6.18-53.1.4.el5smp. Can anyone offer up an explanation for this? Thanks. ---- Graham Frank Neoservers LLC – Founder and Owner Ph: (608) 359-1593 Member of the Better Business Bureau |