【Linux】ロードアベレージについての話

2022.12.03

記事画像
みなさん、こんにちは エンジニアの高橋です。 本日はロードアベレージについてお話したいと思います。 最近現場でサーバの負荷を確認する機会が多くなり、その時に負荷の指標として確認しているのがロードアベレージになります。 簡単に言うと「CPUに対して、平均的にどれだけのプロセスが実行待ちになっているか」を数値で表したものになります。 CPU(コア)は基本一つに対して一つのプロセスしか処理出来ないので、このロードアベレージの数値がコア数以下であれば遅延なくプロセスが処理されており、コア数以上であれば遅延が発生しています。 確認の仕方はuptimeコマンド、もしくはtopコマンドを使います。 例 $ uptime 23:01 up 303 days, 3:20, 3 users, load averages: 1.73 2.15 2.58 ここの「load averages」から後の3つの数字がロードアベレージの数値になります。 直近1分、5分、15分の平均値をそれぞれ出力されます。 今回はuptimeコマンドを使用して確認してみましたが基本topコマンドでもほぼ同じ表示があります。 (ローカルで試しているのですが、私のmacのコア数が2なので常に重くなってそう。。) 自分の担当しているサービスのレスポンスが遅延した際など問題の切り分け方法として、サーバが重いのか、別の何かが引っかかっていて遅いのか問題の切り分け方の一つとして試してみてください。

この記事を書いた人

高橋 希望

入社10年目の元不動産営業、現ゲームエンジニア 得意言語はphp,javascript,python,elixirなど