FM牛鍵屋本舗

プログラマ(弱)の日々精進系ブログ

"Web開発者のための大規模サービス技術入門"を読んだよ

"Web開発者のための大規模サービス技術入門"を読んだよ

紹介

Web**+DB Press Plusの持ちやすいサイズ。 はてなの方が書かれた書籍で、インターン研修をベースにしているようです。

インターンレベル高っ。

実際のはてなや他の大規模サービスの事例をもとに、 インフラやアプリケーションが大規模サービスを構築する際に 考慮するべきことがわかりやすくかかれています。

また、一部アルゴリズムやツールの紹介もあって楽しく読み通せました。

10年前くらいの本なので、クラウド周りの状況が変わっているかな、とは思いますが、 そのあたりにも触れています。ELBが出た当時。

雑感

はてなの人レベル高っ。

もともと大規模なシステム関わったことがなく、そこそこのエンタープライズシステムばかりで ある程度のリソース負荷であればほとんど考えてこなかったのですが、 この本で紹介されている「圧縮」とか「検索エンジン」とかは流用できるなー。

相変わらず計算量オーダーのlogがよくわからない…。

それにしてもわくわくしてなにか作りたくなる気分になる一冊でした。

メモ

  • ディスクI/Oを減らし、極力オンメモリにする
  • DBの負荷分散、冗長化
    • テーブルの役割毎に異なるホストへ分割(論理的、派生して参照中心か更新があるか)
    • 複数HOSTにまたがるのでJOINを避ける
  • ロードアベレージ重要
  • 用途特化型のインデクシング
  • 圧縮
  • ベイジアンフィルタ
  • Trie
  • AC法
  • システム安定化に対する「地雷」
    • 特定条件下で発動
  • システム安定化に関わる「自律化」

アルゴリズムとOS、ジョブキューとキャッシュについて調べたくなりました。どうしても。