質問: 某プロバイダのVPSにてサイトを運用しています。 OSはFreeBSD 4.7です。 最近、突然サイトが重くなることがあり、topで状態を確認しますと、 一番CPU使用率が高いプロセスがmysqldで、5%前後にもかかわらず、 Load Averageが2~4、ひどいときは5を超える時があります。 この状態は短いときは15分程度、長いときは2時間ほど続きますが、 何もしなくても勝手に収束します。 topには表示されないプロセスがCPUを占有しているのでしょうか? VPSだと、同じサーバを共用しているユーザの負荷を影響したりするのでしょうか? この質問はプロバイダの技術担当にしてみましたが明確な解答をいただけませんでした。 負荷の原因となっているプロセスを特定したいのですが、 他に方法がありましたら教えていただけると助かります。
回答: load average はシステムの負荷を示す数値ですが、必ずしもCPUの負荷を示すとは限りません。 "man w" とすると、以下のような文言が見えると思います。 "load average numbers give the number of jobs in the run queue averaged over 1, 5 and 15 minutes." つまり、処理の待ち行列を示すわけで、プロセスが何らかの処理待ちになっている場合はCPU負荷が低いのにload averageが高い、という状況になる可能性が考えられます。 一番考えられるのはディスクアクセスなので、当該時間帯にディスクアクセスが増えていないか、確認してみるのがよいのではないでしょうか。