I have apache in front of Tomcat, using
mod_proxy to relay requests while serving static content directly.
The Tomcat server can get bogged down and stop responding, or just plain crash. My problem is that in those cases it takes the apache httpd down with it. And it won't come back up even after I set Tomcat straight.
When this happens, the only way to get apache working again is to issue a stop command, then
kill -9 remaining apache processes, and lately I also had to run
ipcrm to remove semaphores, otherwise I get a "No space left on device" error.
My guess is that all of apache's workers become proxy threads, waiting to time out, while nothing else is being served.
I don't want to change the
ProxyTimeout, because during normal operation, some requests can really take a long time. But I would like a way to tell apache to stop all the waiting proxy requests it has right now and start afresh.
Is there such a thing, or is there another way I should approach this?
I'm using ubuntu 8.04.