先日、ZOZOTOWNで最大級のトラフィックを記録する福袋発売イベントで実施した負荷対策 という、ZOZOTOWN さんの負荷対策についての記事が公開されました。
はてブをみると、かなりの方がブックマークをされているようですね。
私も案件の中で、ボトルネック調査をすることがあるのですが、その際の基本的なアプローチをまとめる、良い機会かなと思って本投稿を書いてみました。
ボトルネックを調査する対象となる環境はどのようなものか?
ボトルネックの調査を行うための環境ですが、色々ケースがあるかと思います。
例えば、次のようなものがあるのではないでしょうか。
- 自分が保守に携わっている本番環境で発生するパフォーマンス問題
- 開発環境で発生するパフォーマンス問題
- 特定のタイミング (例 : 夜間バッチ) 発生するパフォーマンス問題
ここ数年はフリーランスとして業務をしているため、保守 / 運用を通して「自分が恒常的に面倒を見ているシステムに対してのボトルネック解消」を受けるような機会はありません。
私がボトルネックの調査に携わる機会が多いのは、次のようなケースです。
- 自分が開発 / 保守に携わっておらず、システムの中身が全くわからない環境で発生しているパフォーマンス問題
このようなケースのパフォーマンス問題に対しての調査の依頼というものは、毎年相談を受けます。
本投稿は、「自分が中身を知っているシステムではない環境」でパフォーマンスのボトルネックを調査する場合の、私が実際に行っているアプローチの一つとなります。
Read the rest of this entry »