発刊: 2022-05-30
どんな本?
Webサービスの高速化について、なぜ必要なのか・計測方法・改善の手順について述べられている本です。
著者陣はISUCONというWebサービスの高速化を競うコンテストの参加者で構成されています。ただ、そのコンテスト用の対策というよりも、一般的に高速なWebサービスを作るための下地となる考え方や手法が紹介されている印象でした。
1つ注意すべき点は、いわゆるフロントエンド領域の高速化については触れられていない点です。これはISUCONというコンテストの対象範囲からすると当然なのですが、たとえばCore Web Vitalsの指標の改善などが目的の場合は他の書籍を探しましょう。
計測の扱い
Chapter1〜4は基礎知識やモニタリング、負荷試験の話です。つまり高速化作業の前段階の話であるにも関わらず、本書の3割がここに使われていることに好感を覚えました。
Webサービスのバックエンド担当の方であれば高速化についてなら興味はあるものの、モニタリングや負荷試験については興味を持てない、もしくはよくわからないという方は多いのではないでしょうか。
そういった方にでも読める内容になっており、実践編への足場がけがしっかりしていると感じました。
付録について
ISUCONを社内で開催されている会社さんがあり、その題材のコードはGitHubで公開されています。本書ではそのコードを使ったハンズオンにより実際の高速化を体験できるのが良いと思いました。
あと個人的には、ハンズオン最後の「1番大きいボトルネックの対応を戻してみる」が好きでした。様々なチューニングを行った状態なのに、これをやるとほぼ初期状態の点数に戻ってしまいます。
実際のWebサービスでも、その時点での1番のボトルネックを解消しないとその他の施策は効果が薄いです。そのことが再現されていて感心しました。
さいごに
本書はWebサービスのバックエンドとなるアプリケーションや、インフラのチューニングが題材です。その内容は実際のWebサービスにも適用できますし、基礎から解説されているため理解も容易でした。
現在Webサービスの高速化に取り組んでいる方はもちろんですし、今まで高速化に興味のなかったアプリケーションエンジニアの方に特にオススメしたい本です。