makurosu8 blog

ゲーム開発全般/勉強会レポート/雑記

『Web開発者のための大規模サービス技術入門』二日目

『推測するな、計算せよ・・・』単一ホストの性能を引き出す

 ボトルネックを見極める

 ・ロードアベレージを確認

 ・CPU、I/Oどちらがボトルネックか確かめる

 ロードアベレージを見る

 ・ロードアベレージ

  システム全体の負荷を示す指標

 ・高かった場合は?

  CPU、I/Oどちらがボトルネックか確かめる

 CPUがボトルネックの場合

 ・ディスクやメモリに負荷がかかってない理想的な状態

  Webサーバを増やせば解決

 ・なにかのプロセスが暴走している

  どのプロセスの負荷が高いのか調べてプログラム修正

 I/Oがボトルネックの場合

 ・特定のプロセスが消費しすぎている

  どのプロセスの消費しているのか調べる

 ・搭載メモリが不足している

  メモリ増量 or 分散

 ・プログラムの不具合で消費しすぎている

  プログラム修正

 ・そもそもデータ量が多すぎる

 

まとめ

 ・ボトルネックを見極めるのが大切

 ・CPUがボトルネックの場合は理想的な状態で対応は容易

 ・I/Oがボトルネックの場合は対応が大変