|
I strongly suspect this server needs more memory. If you look at the IO Wait it is very small, meaning the I/O isn't causing problems. But the free memory is only a few percent of the total, meaning you are out of memory. The system having to move chunks of data between main memory and swap is what is driving your CPU usage through the roof. If you get more memory, it should solve the problem since that swapping can stop.
One way to verify that is to use sar -g to check how much paging activity is going on. Here is an example from my box.
krypton$ sar -g 5 5
SunOS krypton 5.10 Generic_118822-02 sun4u 02/06/2006
10:18:34 pgout/s ppgout/s pgfree/s pgscan/s %ufs_ipf
10:18:39 0.00 0.00 0.00 0.00 0.00
10:18:44 0.00 0.00 0.00 0.00 0.00
10:18:49 0.00 0.00 0.00 0.00 0.00
10:18:54 0.00 0.00 0.00 0.00 0.00
10:18:59 0.00 0.00 0.00 0.00 0.00
Average 0.00 0.00 0.00 0.00 0.00
krypton$
Krypton isn't heavily loaded and has plenty of free memory, so there is no paging or swapping going on at all. If your box shows non-zero numbers here it is out of memory and having to swap. Occasional non-zero is ok as it may just be moving old data out of memory, but if it is constantly a high number it is a problem. My guess is that is what you'll see.
|