Linuxサーバのリソースをチェックして最適なパフォーマンスを維持しよう①
最近の64-bitクアッドコア/インテルXeonプロセッサーでサーバを構築していれば
通常のサービスを備えたWEBシステムは問題なく動作し続けると思います。
数年再起動しなくても、安定動作で動き続けるサーバは本当に凄い!
ただ、会員数、ログデータがどんどん蓄積されるシステムの場合は、日がたつにつれてどうしてもパフォーマンスの低下が必ず起こりはじめます。
Linuxカーネル,Apache,MySQL,PostreSQL,PHP,Ruby,Perl,Java,ハードそのものなどなどチューニングポイントはたくさんありますが
何が原因でパフォーマンスが低下しているのか?それを特定しない事にはチューニングを始める事ができません。
管理者としてサーバリソースのチェック方法は正しく覚えておきたいものです。
数も少ないので、この際しっかり覚えてマスターしちゃいましょう。
CPUをチェックする!
# vmstat(Virtual Memory STATistics)
メモリーやCPUの負荷率や使用状況を表示します。
■構文
# vmstat [delay [count]]
■オプション
delay … 検査する間隔を指定する。(単位は秒)
count … 検査する回数を指定する
■結果
Procs … アクティブなプロセスに関する統計
r = 実行待ち状態にあるプロセス数
b = 割り込み不可能なスリープ状態にあるプロセス数
w = スワップアウトされており,実行可能なプロセス数
Memory … メモリーの使用量と使用可能量に関するデータ
swpd = 仮想メモリー量
free = 空きメモリー量(Kバイト)
buff = バッファとして用いられているメモリー量(Kバイト)
Swap … スワップに関する統計
si = ディスクからスワップインしているメモリー量(Kバイト/秒)
so = ディスクにスワップしているメモリー量(Kバイト/秒)
IO … デバイスとの転送量
bi = ブロック・デバイスに送られたブロック数(ブロック/秒)
bo = ブロック・でバイスから受け取ったブロック数(ブロック/秒)
System … システム全体の割り込みおよびコンテキストの切り替えレート
in = 毎秒の割り込み回数
cs = 毎秒のコンテキスト・スイッチ回数
CPU … CPUの使用量の割合
us = ユーザー時間
sy = システム時間
id = アイドル時間