詳解システム・パフォーマンス
https://gyazo.com/9aa0fd1e76810159b7afdc3750b2d57a
avashe.icon 全体の感想
全く掴めてない状態から原因を分析する時に、どういう道筋を立てるか
本書ではメソドロジという抽象的な手順を複数組合わせて分析手順を作っておくことを推奨する メソドロジ(抽象的な方法論)を組んだら、それをどう具体化するか?
つまり、どのコマンドからどの値を取得すればメソドロジで満たしたい証拠を得られるか?
各ツールはそれぞれ取得できるもの(やその解釈方法)に得手不得手があったりするのでmanを比較してみよう
最初辞書的に感じたのはツールが列挙されているように見えたのが理由、実際にはそうでもない
メソドロジを組むに辺り必要な前提知識を教えてくれる
本の流れとしては、各論(CPU、アプリ、メモリ、IO、ネットワーキングなど)にてアーキテクチャを解説し、メソドロジを組んでいき、最後に課題がある
課題では実際に自分で具体的なメソドロジを組んでみるのが大事
すぐさま適切なコマンドは出てこないし、その値の解釈方法も先に理解しておねばならない
実際レイヤーが落ちてくるほど適切にパフォーマンスを分析するのは難しい
やってると多くの人はまともにパフォーマンスを計測できてないのでは?と思わされる
あとeBPF使いたくなるし、カーネルを読む重要性がわかる
SREの新入社員とかに読ませると良さそう
枯れたシステムに残る最後の問題がパフォーマンス障害であり、得てしてそれは原因を特定しづらいから
勿論作ったミドルウェアの計測とチューニングを適切にやりたい人にも強くおすすめ
正直翻訳は悪い
訳者がタームとそうでない物の区別が付いてないために誤訳、あるいは曖昧な箇所が散見される
基礎的で良いのでLinuxカーネルの概観やタームなどは知っておかないと独学はうんざりするかも
第二版製作中らしいので今から読む人はそっちを待った方がいいかも
eBPFエコシステムでツールスタックを置き換えちゃうんじゃないかと思われる 特にメモリやファイルシステムのパフォーマンス分析はeBPFなしには厳しいと思わされる内容だった
それでも日本語版はしばらくでないだろうけど
4章 DTrace