More data on 7.2-RELEASE "hangs"
cswiger at mac.com
Wed May 13 17:18:33 UTC 2009
On May 13, 2009, at 9:52 AM, John Baldwin wrote:
[ ... ]
> Well, you had a whole lot of page faults and other VM activity, plus
> syscalls. The 'w' is a count of swapped processes, so basically
> your box is
> swapping a whole lot it seems. I think your box is just overloaded.
Yep. There's a classic failure mode with preforking Apache where if
the number of requests exceeds the max number of children which can be
run without sending the system into heavy swapping, the server will
effectively grind to a halt. Start tuning by figuring out how much
RAM you have available to Apache after system processes and things
like your Postgres (and MySQL?) server are accounted for, divide by
the the RES size, and set MaxChildren to that in httpd.conf.
Also, the process size of named is fairly astonishing:
PID USERNAME THR PRI NICE SIZE RES STATE C TIME WCPU
28752 root 5 96 0 427M 408M select 1 1:55 0.00% named
9720 nobody 19 97 0 402M 186M RUN 1 0:00 0.69% nsd
...even if you are running the process in 64-bit mode. This can be
brought under control by tuning recursive-clients and max-cache-size
options. Also, is nsd process from ports/dns/nsd-- ie, another
nameserver? Your machine is being overloaded by running too much
stuff that's duplicating functionality; it's just not a good idea to
try to run different types of databases on the same machine; they'll
fight with the VM system and each other, making your VM system trash....
More information about the freebsd-stable