Linuxでの「負荷」の原因切り分けについて調べる

こんにちは。昨日もラーメンを食べたきたけーです。
ここ数日、色々な本を読んで、Linuxでの「負荷」の原因切り分けについて調べて、Gistにまとめました。

https://gist.github.com/kitak/6349463

困ってるのは、普段、原因を切り分ける状況にそれほど巡りあわせないということ。自分でVMとかでプロセスがリソースを奪い合っている状況をつくってもいいですが、それだと始めから答えがわかっているクイズをやるようなものですし。サービスの開発環境で、良い状況があったら積極的に入ってみる、といったところが妥当かなぁ...

読んだ本

大規模サービス技術入門

前半に「サーバー/インフラを支える技術」のダイジェストが載っています。良い感じにまとまっているので、最初にこれを読んで全体を俯瞰する。

サーバ/インフラを支える技術

[24時間365日] サーバ/インフラを支える技術 ?スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)

[24時間365日] サーバ/インフラを支える技術 ?スケーラビリティ、ハイパフォーマンス、省力運用 (WEB+DB PRESS plusシリーズ)

原因の切り分け方以外にもスケジューリングやロードアベレージの計測方法などについてカーネルのソースコードレベルで解説を行っているので、深堀りをしたくなったら適宜読む。