Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1053
  • Last Modified:

Apache-can't spawn child process

We are using Apache 1.3 and have these values set:

MaxClients 100
MaxRequestsPerChild 20

Yesterday, a user must have been leaning against the enter key and created over 200 processes causing the web server user 'nobody' to reach its max process limit and start giving the error 'can't spawn child' to new requests. What settings can I use to prevent this from occurring. Is there a setting that will just lock out the offender and not affect anyone else? I believe our AIX is set to allow 300, but read that httpd.h allows 256.
0
srollins
Asked:
srollins
  • 2
1 Solution
 
trilijiCommented:
It sounds to me as though the server is doing it's job by not allowing any more child processes to be spawned. I am confused by the statement, "leaned against the enter key" as I don't think this would cause a server to be flooded with PUT commands. I have never heard of this problem and admit that I am unsure of this.
In any event, this would be a rare occurence and the sysadmin should be able to catch these errant mistakes or overloads and kill the processes to free up resources.

The CGI script  can also be modified to limit the number of PUT requests to handle this problem.

Hope this helps
0
 
srollinsAuthor Commented:
The "leaning again the enter key" causes the form on the screen to be submitted repeatedly because a carriage-return submits the form. Someone leaning on it would continuously submit the form over and over.

You say that I should be able to catch these errant overloads and kill some processes. How do I catch these overloads and how do I know which processes to kill. I don't want to kill a legitimate process that may be writing to the database.
0
 
trilijiCommented:
What O/S are you using?
Do you presently have a program to monitor your sites
activity?

Is the form writing to a binary database or flatfile?
Killing a process can be pinpoint or shotgun
and it should not be hard to detect a runaway process.
Unless your site is receiving millions of hits you should
be able to notice an extraordinary increase in processes being
run.

You can use the kill pid for pinpoint or the
killall for shotgun but be careful not to run it
as root if you are the sysadmin or you could
cause some irreversible damage.

Is this a CGI script you are running?
0

Featured Post

Microsoft Certification Exam 74-409

VeeamĀ® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now