ロードアベレージとは、システムが どれだけ処理待ちで混んでいるか を表す指標です。サーバが「重い」ときにまず見る数字なので、意味と目安を正しく理解しておきましょう。
ロードアベレージの見方
uptime や top の先頭に、3つの数字が出ます。
load average: 0.52, 0.80, 1.10
左から 1分・5分・15分 の平均です。3つを見ると、負荷が上がってきているのか(右<左)、落ち着いてきたのか(右>左)の傾向がわかります。
数字の意味:CPUコア数と比べる
ロードアベレージは「実行中+実行待ちのプロセス数の平均」です。目安は CPUのコア数 と比べること。
- コア数と同じ → ちょうど使い切っている状態
- コア数より小さい → 余裕あり
- コア数より大きい → 処理が追いつかず、待ちが発生(=重い)
例えば4コアのサーバなら、ロードアベレージ4付近が「フル稼働」、それを大きく超えると過負荷のサインです。
コア数の確認
nproc # コア数を表示
grep -c processor /proc/cpuinfo
「ロードアベレージ ÷ コア数」で1を超えていたら混雑、と考えると分かりやすいです。
ロードが高いときの切り分け
ロードアベレージが高い=必ずしもCPUが原因とは限りません。I/O待ちでも上がります。top で内訳を見ます。
%us(ユーザー)が高い → アプリの計算が重い%sy(システム)が高い → カーネル処理・システムコール%wa(I/O待ち)が高い → ディスクI/Oがボトルネック(CPUではない)
%wa が高いのにCPU増強しても直りません。ここの見極めが大事です。
まとめ
ロードアベレージは「処理待ちの混み具合」を1分/5分/15分平均で表す指標。コア数と比べて評価し、超えていれば過負荷です。ただし高負荷の原因はCPUとは限らず、top の %wa(I/O待ち)も要チェック。まず数字の意味とコア数比較を押さえれば、サーバの「重い」を的確に切り分けられます。