【トップ】

top とは?

💡 サーバーの今を映し出すリアルタイムモニター、システムの健康診断
📌 このページのポイント
top — システムのリアルタイム監視 top - 14:23:01 up 45 days, load average: 0.82, 1.05, 0.93 Tasks: 142 total, 2 running, 140 sleeping %CPU: 41% %MEM: 65% PID USER %CPU %MEM COMMAND 1234 mysql 35.2 20.1 mysqld CPU高い! 5678 nginx 8.5 12.3 nginx: worker 9012 node 5.1 15.7 node server.js 3456 redis 2.3 8.4 redis-server 7890 root 0.1 0.2 sshd 1122 root 0.0 0.1 cron CPU・メモリ使用率が高い順にプロセスを表示 / リアルタイムで自動更新
topのイメージ
ひよこ ひよこ

topコマンドって何が見られるの?

ペンギン先生 ペンギン先生

サーバーの「今の状態」が一目でわかるコマンドだよ。CPU使用率、メモリの空き状況、動いているプロセスの一覧がリアルタイムで表示されるんだ。病院の心電図モニターみたいなもので、システムの健康状態を常時チェックできるよ

ひよこ ひよこ

サーバーが重いとき、まずtopを見ればいいの?

ペンギン先生 ペンギン先生

そのとおり!topを開いて、CPU使用率の列(%CPU)を見れば、どのプロセスCPUを大量に使っているかすぐわかるよ。メモリの列(%MEM)を見ればメモリを食っているプロセスもわかる。トラブルシューティングの第一歩だね

ひよこ ひよこ

topの画面って情報が多くて読み方がわからないんだけど...

ペンギン先生 ペンギン先生

上部の要約エリアと下部のプロセスリストに分かれているよ。上部で特に見るべきはload average(負荷平均)で、CPUコア数以下なら健全。下部はデフォルトCPU使用率順にソートされていて、Mキーを押すとメモリ順に切り替わるよ

ひよこ ひよこ

htopっていうのをおすすめされたことがあるけど、何が違うの?

ペンギン先生 ペンギン先生

htopはtopの高機能版で、カラー表示でCPUやメモリの使用状況がバーグラフで見やすく表示されるんだ。マウスクリックやカーソルキーで操作できるし、プロセスツリー表示もできる。ちなみにtopのload averageの3つの数字は1分・5分・15分の平均負荷を表していて、この3つの傾向を見ることで「負荷が上がっている最中なのか下がっている最中なのか」がわかるんだよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「top」って出てきたら「システムの負荷やプロセスをリアルタイム監視するコマンド」と思えればだいたいOK!
📖 おまけ:英語の意味
「table of processes」 = プロセスの一覧表
💬 「プロセスの表」という意味だよ。CPU使用率が高い順に上(top)に表示されることから、この名前がぴったりなんだ
← 用語集にもどる