WebOperations

#!html

献本頂きました。O'Reilly Japan 様、@kdmsnr さん、@hmsk さん、ありがとうございます!

本書はタイトルにある通り、ウェブの運用に関わる本なんですが、僕が敬愛する John Allspaw 氏と、Chef で有名な Opscode の CEO、Jesse Robbins 氏の監修による、17 + 1 本のエッセイ集で、監修の両氏以外にも様々な方によって書かれています。(+1 は日本語版のみに収録されている、@hmsk さんによるクックパッドのインフラの話です。)

目次は以下の通りとなっています。

このように、運用や監視の話、運用者のキャリアに関する話、クラウドに関する話、DevOps に関する話、リレーショナルや非リレーショナルなデータベースの話、ストレージの話、障害対応に関する話、などなど、ウェブの運用に関して多岐にわたった話が掲載されています。

どの話もとても興味深いのですが、特に興味深かったのは、「2章 Picnikにおけるクラウドコンピューティングの利用とその教訓」と「12章 ウェブにおけるリレーショナルデータベースの戦略と戦術」です。

ペパボでは写真サービス 30days Album を提供していて、一時的な高負荷に対応するために、クラウドをいかに活用するかを模索しているところなので、同じ写真サービスである Picnik におけるクラウドの活用に関する話は、とても参考になります。(といってもサービスの性質が違うため、そのまま真似できるわけではありませんが。)

また、12章は、実践ハイパフォーマンスMySQL 第2版の著者の1人である、Baron Schwartz 氏によるもので、最適なデータベースアーキテクチャを選択するためにはどうすれば良いか、ということについて書いてるんですが、「GUID を(主キーに)使うのは、データベースが何であれ、最悪だ!」とか、「みんな平気な顔をしているようだが、もっとシャーディングを怖がるべきだ」「シャーディングはウェブアプリケーションに適したアーキテクチャではない」「まともなハードウェアを購入せずに大量の安いマシンでシャーディングアーキテクチャを構築し、スケーラビリティを確保しようとするのは、私に言わせれば、単なるバカだ」とか、「このプロダクトが、MySQL Cluster と呼ばれているのは残念」とか、小気味よい調子で良いアーキテクチャを選択するための指針を示してくれています。

詳しくはぜひお手元にとって読んでみて下さい。ひとつひとつの章が独立した話でそれほど長くないので、好きなところからさくっと読めるのがいいですね。自分は英語版は一通り読んだので、日本語版ではまずは 18章 のクックパッドさんの話から読んでみようと思います。