Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

We restart an apache server every day because RAM usage reaches its limit.

Though of value See this serverfault answer, I dont think lowering the MaxClients in the apache configuration is a solution to the unknown root problem.

The apache processes below appear unusually large in MB and long in time. Does this mean there is memory leakage. Does this mean we should lower MaxRequestsPerChild settings?


Can you make sense out of the below data?

Below is an extract of what

$top with M


20839 www-data  20   0 1008m 359m  22m S    4  4.8   1:52.61 apache2                     
20844 www-data  20   0 1008m 358m  22m S    1  4.8   1:51.85 apache2                     
20842 www-data  20   0 1008m 356m  22m S    1  4.8   1:54.60 apache2                     
20845 www-data  20   0  944m 353m  22m S    0  4.7   1:51.80 apache2  

and then investigating a single process with

$sudo strace -p 20839

returns only this one line, which is cryptic, for me:

restart_syscall(<... resuming interrupted call ...> <unfinished ...>

Any insights? Thanks.

share|improve this question

That line means that the current system call was interrupted by your strace and that strace asked to re-run it. I think that the process you are tracing is sleeping.

If apache is forking too many clients and the server start paging to disk, then you should lower the MaxClients directive.

MaxClients <= (RAM - RSS_all_other_processes)/(apache_process_RSS - apache_SHR) - 1

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.