ISUCON本はISUCONやらないひとにもおすすめ
出版からだいぶ時間が経ってしまいましたが…「達人が教えるWebパフォーマンスチューニング 〜 ISUCONから学ぶ高速化の実践」をcatatsuyさんに献本いただきました。ありがとうございます。
ISUCON12予選もうすぐですね。巷で「ISUCON本」と呼ばれている本書ですが、(ISUCON対策としてももちろん役立ちますが)ISUCONに参加しない方にもおすすめです。
実践的にハイパフォーマンスにWebサービスを開発・運用する上で必要な基礎知識が一通り解説されていて、SREはもちろんバックエンドエンジニアになりたてのひとが一通り知識をつけるのにとても有用だと思います。
「推測するな計測せよ」という格言がありますが、その通り、まずはモニタリングの方法が解説されています。 top, sarなどの古典的なコマンドから、Prometheusなどのモダンなツールまで紹介されています。最近ではSSHすることも減り機会は少ないかもですが、アドホックに状況を把握したいときなど、各種Linuxコマンドは知っておいて損はないですよね。この章ではモニタリングの方法だけではなく、結果をどう読み解くか、状況を誤解しないために気をつけるべきかなど、ツールの使い方の先に触れられていてよかったです。
次に、モニタリングができている環境に対して負荷試験を行います。ISUCONで毎回お世話になっているalpを使ってボトルネックを探りつつ。ベンチマーカーとしてGrafanaがつくっているk6を使っています。モダンですね。
ここまででモニタリング、ベンチマークができるようになって、ここから高速化の方法について解説されています。ボトルネックになりやすいデータベースの最適化、キャッシュをつかった高速化などに触れられています。
本書で解説されていることをちゃんとできたら、ISUCON予選は通過できそう?
今後、新人エンジニアが入ってきたら、とりあえずこの本をおすすめしていきます。
それにしても、この本によってレベルが底上げされてISUCONがさらに激戦になるんじゃないかという予感が…とりあえず本選に出場できるよう頑張っていこうかと思います。