おそらくはそれさえも平凡な日々

「nginx実践入門」は紛うことなき「実践」の本だった

nginx実践入門

技術評論社様よりご恵贈頂きました。著者の1人である cubicdaiya さんより、いただけるというお話をもらった時は非常に光栄でした。ありがとうございます。

思っていたとおり非常に良い本でしたが、特に良かった点としては、章立てを含めた構成の素晴らしさ、そしてまさに「実践」を意識したインフラアーキテクチャの本になっている点だと思う。

  • Nginxのアーキテクチャ
  • 静的ファイル配信
  • リバプロ構成
  • コンテンツ配信システム
  • モニタリング
  • LuaとかOpenRestyとかによる拡張

という章立てになっていて、流れが非常にわかりやすい。Nginxを軸にした、様々なインフラのデザインパターンの説明になっている。これは紛うことなき「実践」の本であり、イマドキのインフラアーキテクチャについて学ぶ上でも良本である。

静的ファイル配信、リバプロ構成、コンテンツ配信システム、それぞれの構成において重要になるディレクティブが事細かに説明されており、非常に分かりやすかった。得てしてこういった設定項目を説明するときは、リファレンス的な退屈な羅列になりがちで、逐次読んでいく分には頭に入ってこないものだが、この本は、対象とするアプリケーションと、その場合に必要になってくるディレクティブがセットで語られており、非常に理解しやすいものになっていた。

リバプロ構成では、PHPやUnicornとの連携について語られていたり、モニタリングの章ではfluentdやNorikra、Growthforecastを絡めたインフラ構成について語られており、単なるNginxだけにとどまらない、実践的なインフラアーキテクチャについて深い知見が載っていたように感じる。

個人的には第5章のhttpsに関する章が、改めて読むと、ちゃんと理解していない所だらけで、非常に学びがあった。

第6章の「Webアプリケーションサーバーの構築」に関しては、 try_files ディレクティブを積極的に使っている点が少し気になった。 try_files はトリッキーなので、意図せずアプリケーションサーバーにリクエストが飛んでしまい、要らぬ負荷をもたらしたり、どこでエラーレスポンスを返しているか追いづらくなるので、個人的には使わないに越したことはないと思っている。ただ、局所的に必要になる場合はあるだろうとは思っていて、ものすごく重いリクエストを一時的にファイル配信に差し替えたい、となった場合に try_files にしておくことは有効なのかもしれない。特にpixivさんのような重いコンテンツ配信が多いシステムだと、その傾向がより強いのかもしれない。

第7章の「打規模コンテンツ配信サーバーの構築」はよりpixivさんっぽくて面白かった。普段あまり関わりのないシステム構成の話なので面白く読めた。

第9章のnginx_lua、第10章のOpenRestyのところは、非常に興味深かったし勉強になった。ただ、個人的にはもう少し実例を含めて掘り下げて欲しかったように感じる。ただ、対象ユーザーとか、分量的な部分で仕方なかったんだろうなーとか思います。

Nginxは今やスケーラブルなWebシステムを構築する上で欠かせない存在になっており、その中で本書は、様々なパターンに対する実例を示した実践的な良書であると思う。Nginxを知りたいというだけでなく、現代的なインフラアーキテクチャを知りたい、という人にも是非オススメしたい。

nginx実践入門

created at
last modified at

2017-08-28T00:28:29+0900

comments powered by Disqus