「ハイパフォーマンスブラウザネットワーキング」を読んだ

ISUCON11を振り返る - さんちゃのblog に書いたとおり、ブラウザ・HTTP周りの知識の少なさを感じていた。この問題を解決するために、「ハイパフォーマンスブラウザネットワーキング」を読んだ。

この本は、単にベストプラクティスを列挙するのではなく、TCP / TLS / WiFi / 3G・4G回線などの通信経路の「原理」あるいは「メンタルモデル」を提供する。そのため、読者が自分で検討する能力を獲得することができる。

HTTP/2 や WebSocket、 WebRTC などの新しく導入されたプロトコルについての解説も厚くされているのだが、その背景となる通信やデバイスの特性とセットで示されるため、その必要性や意味するところ、導入するべきユースケースなどが想像しやすい。

もちろん単に原理を述べるだけではなく、そこから導き出される具体的な種々のベストプラクティスもしっかり記載されている。例えば、最新のTCPの設定を有効にするためにサーバーのカーネルをバージョンアップすることの重要性とか、HTTPレイヤのキャッシュの設定方法とか、HTTP/2への乗り換えの案内とか。

そのため、「今すぐ役立つパフォーマンス改善の手引」として読むこともできるし、読者の能力を拡張してくれる教科書として読むこともできる。

この本を読むことで、自分が運用しているシステムの普段意識しない詳細について知りたくなるだろうし、また、これからソフトウェアを実装する際に意識できるポイントが大きく変わってくると思う。非常に学びが多かったと感じるし、現実的に読み切れる分量の技術書でもあるし、個人的にはオススメの本だ。

なお、初版が2014年とやや古いことに起因するためか、2021年の第2版においても 5G や HTTP/3 (QUIC) などのトピックについての言及がないことはやや残念ではある。第3版を楽しみに待っている。