読者です 読者をやめる 読者になる 読者になる

『マスタリングNginx』を献本頂ました & レビュー

nginxと私

僕がnginxを初めて使ったのは2009年の夏頃で、当時在籍していた会社の技術ブログでちょっとした記事を書いたりもしました。バージョンは確か0.6.xか0.8.xだった気がします。いまや1.4.xなので隔世の感がありますね!*1

今在籍しているピクシブではnginxをかなりヘビーに活用していて、 コンテンツ配信やロードバランサー、リバースプロキシ、キャッシュプロキシ、WebDAV等々、pixivの至る所で稼働しています。メインで運用しているのは大体@harukasanで、たまに二人でnginxのソースコードを追っかけたりもしています。

僕個人でもnginxも拡張モジュール(ngx_small_lightmruby_nginx_module)を開発したり、nginxの開発チームにパッチを送ったりしました。

こういう活動のおかげもあってか、この度オライリー・ジャパン様から『マスタリングNginx』を献本頂きました。この場を借りてお礼申し上げます。ありがとうございます。

nginxを解説した書籍

今年の夏に発表された調査結果によると世界TOP1000のWebサイトの間でNo.1のシェアを獲得するなど、 日に日に注目度が高まっているnginxですが、本格的な書籍は日本語だと『ハイパフォーマンスHTTPサーバ Nginx入門』ぐらいしかありませんでした。*2

『マスタリングNginx』レビュー

そして満を期してオライリー本の登場です。

マスタリングNginx

マスタリングNginx

本書はリファレンス形式でnginxの主要な基本機能について詳細かつ丁寧にカバーしているのでnginxをこれから使ってみたい人、実際に運用しているけど挙動の細かい部分についての理解があやふやな人に非常におすすめできる内容だと思います。必要な章をつまみ読みするだけでも十分価値があると言ってよいでしょう。

また、メールプロキシモジュール*3やWindows上でのnginxのビルド方法や動かし方等についてもきっちり解説していて比較的少なめのページ数ながらしっかり解説してるなぁという印象です。

一方でサードパーティーモジュールの紹介や解説が少ないのがヘビーユーザーとしては少々物足りないところです。

また、原書の出版時期の影響か最新の情報(1.4.x以降)を若干キャッチアップできてない箇所があります。*4

例えば8章で解説されているStub Statusモジュールですが、これは1.4.xで挙動が大きく変わっています。

今年の5月頃に@kazeburoさんがブログで言及していますが、 1.4.xだとかなりのリクエストを捌く環境でもStub StatusのReadingのカウントが常に0あるいはそれに近い値になります。これはnginxが1.3.14からacceptした直後のリクエストをReadingではなく、Waitingとしてカウントするようになったためです。*5

なので、1.4.xではReadingのカウント数が極端に低くなるかわりにWaitingのカウント数が増えるので注意しましょう。

また、付録Cでnginxの開発コミニュティについても少しだけ触れていて、メーリングリストやIRC、バグレポートの書き方の解説が載っていますが、せっかくなので下記に僕がnginxの開発チームにパッチを送った時の様子を綴った記事へのリンクを貼っておきます。

余談

あと昨年の話ですが、WEB+DB PRESS Vol.72に会社の同僚とnginxの記事を書いたので興味のある方はそちらもご覧ください。

WEB+DB PRESS Vol.72

WEB+DB PRESS Vol.72

  • 作者: 近藤宇智朗,生井智司,Dr.Kein,tokuhirom,森田創,中島聡,堤智代,A-Listers,はまちや2,竹原,川添貴生,久保達彦,道井俊介,飯田祐基,中村知成,規世やよい,後藤秀宣,天野祐介,奥野幹也,WEB+DB PRESS編集部
  • 出版社/メーカー: 技術評論社
  • 発売日: 2012/12/22
  • メディア: 大型本
  • 購入: 11人 クリック: 94回
  • この商品を含むブログ (10件) を見る

*1:シェアも当時の2〜3倍くらいになっています

*2:ほかにあったらすみません。あと実は読んだことないです。

*3:実はnginxはメールプロキシとしても使えるんですよ、奥さん

*4:原書の発売日は2013年3月。nginx1.4.0のリリースは2013年4月

*5:コメント欄とそのリンク先を参照