It is been a while since I last worked on FreeBSD but if I recall correctly: 'lockf' - sleeping on a flock() or fcntl() equivalent on some file fd somewhere. 'sbwait' - socket buffer wait - a wait due to recv or send buf size for socket fds'. Attaching a gdb on such child pids and getting a backtrace might help narrow down where it could be occuring - maybe it is a deadlock. Also 494MB of ram sounds awfully less these days - increasing it might help. Ravi On 12/13/06, Kevin Jones <kevwjones@xxxxxxxxx> wrote:
I'm running an Apache server on a FreeBSD server with 494 MB of RAM and an Intel Celeron 2.4 GHz CPU. A recent surge of traffic to my PHP site has been causing the server to come to its knees. The first symptom is that the server won't return my page when I access it through the browser. The connection times out. In researching, I found out that my available RAM had become cripplingly low (about 1 meg) because Apache had spawned over 100 different processes of itself. So, I figured the way to fix this was to limit how many processes Apache would start up max, so I edited the httpd.conf and set MaxClients to 40 (I'm using the prefork MPM) and KeepAliveTimeout to 15. That's fine, but now it runs out of available processes to handle requests very soon. I run "top" to see what's happening, and I see that most of the apache processes are in the "lockf" state. And a few are in "sbwait". I run "ps", and see that most of the apache processes are idle or sleeping. What do lockf and sbwait mean? Are the processes just idling? How do I get the Apache processes to die? Thanks for any help.
--------------------------------------------------------------------- The official User-To-User support forum of the Apache HTTP Server Project. See <URL:http://httpd.apache.org/userslist.html> for more info. To unsubscribe, e-mail: users-unsubscribe@xxxxxxxxxxxxxxxx " from the digest: users-digest-unsubscribe@xxxxxxxxxxxxxxxx For additional commands, e-mail: users-help@xxxxxxxxxxxxxxxx