pirosikick's diary

君のハートにunshift

オライリーのウェブオペレーションーサイト運用管理の実践テクニック読んだ

これから本を読んだら感想を残しておこうと思ったので、久々の更新。いつまで続くだろうかw

ウェブオペレーション ―サイト運用管理の実践テクニック (Theory in practice)

ウェブオペレーション ―サイト運用管理の実践テクニック (Theory in practice)

きっかけ

なんでこの本を読もうと思ったかというと、「俺、全然運用のことわかってないな」と思う機会があったのと、リリースしてからが本番なわけでそのために設計・開発してるわけだから運用のこと知らないとダメだろって思ったからです。この本は広く浅く書いてありそうだったから手に取りました。英語の勉強をするために技術書は全て英語のやつを読もうと決めていましたが、翻訳版は18章にクックパッドの話が載っているので今回は翻訳版を購入。

感想

会社では開発担当だし運用のことを詳しくわからないので一部適当に読んだ章もあったけど、全体的にすらすらと読める感じだった。章ごとに執筆者が違うんだけど、どの章も実例を交えつつ書かれているので興味深かった。

いっぱいノウハウが書いてあったけど、開発担当としてとりあえずこれをやってみようと思ったのが以下の3つです。(少ないけどもw)

  • オペレーションの自動化
  • 収集しているメトリックスを定期的に見る
  • ビジネスについてもっと考える
オペレーションの自動化

今までもコマンド用意したり自動化してたつもりだけどまだまだだなーと思いました。運用担当がエディタ開いて作業するような運用工程(メンテナンスモードにするのに設定ファイルの編集が必要とか)はできる限りなくすようにしたいですね。
あとブラウザからそういう作業をできるのが一番楽なはずなのでツールを用意したり開発担当として設計時に考慮すべきことはいっぱいあるなーと思いました。バッチが落ちたあとの自動復旧とか、わかりやすいエラーログ出すとか、お互いの時間をなるべく節約できるように、現状に満足せずに追求していかないといけないですね。

収集しているメトリックスを定期的に見る

メトリックスという言葉自体この本で始めて聞きました(無知ですみません。。)が、おそらく知らないだけで収集してそれを見れるツールはどっかにあるだろうから開発担当も定期的に見てサービスの状態に気を配らないといけないですね。反省。

クックパッドはレスポンスタイムの基準が200msecらしい。うちの会社も基準はあるけど、クックパッドはそれを監視する体制がかなり整っているみたいで、オフィスの中央にそれをモニタリングしてるディスプレイを置いたり、200msecをオーバーした場合に、レスポンスの劣化をインフラチームのエンジニアの端末と携帯電話に通知しているらしい。(普通かもしれないけど)

サーバはいつか壊れるしデータも増えれば処理はどんどん重くなる。それを予測できるようになるには普段から気を配らないといけないですね。

ビジネスについてもっと考える

開発担当として「どうやったら売上に貢献できるか」とか「どうやったら費用を抑えられるか」ということは結構考えていたけど、「何分停止したらどれだけ損するか」「どのくらいのデータロスは許容できるか」「この障害のビジネスインパクトは何」ということは聞かれてもぱっと答えられないし真剣に考えたことなかった。これについては14章に詳しく書いてあったので、次回設計するときには必ず読みなおそうと思います。

まとめ

設計も開発も選択肢が無限にある中でよりよい方法を論理的に選択するには、あらゆる視点から考えないといけないです。例えば「より綺麗なコードはどっちか」とか「保守しやすいのはどっちか」とか。なので、開発担当でもビジネス、運用、制作等、いろんな視点でコードや設計書を見つめないといけないなーと思ったし、その視点を持つには自分の仕事以外のとこも興味を持っていかないといけんですね。そんなこと考えた社会人4年目の春でした。

次はこれ

パーフェクトJavaScript (PERFECT SERIES 4)

パーフェクトJavaScript (PERFECT SERIES 4)

読もう読もうと思ってずっと読んでなかったのですが、とうとう購入しました!分厚い本だけど半月くらいで読みたいですねー