投稿元:
レビューを見る
Webサービスのスケーラビリティを確保するための方法論が書かれた本。OSやデータベースの内容が中心。はてなの運用経験を基に書かれており、実際の業務の具体的な話が多くて勉強になった。個人でプログラミングしていても経験出来ないことだと思うので読んでおいて損は無い。
投稿元:
レビューを見る
読み始め1/4で良いと響いた点
・OSの動作原理を知るということが、負荷分散の学習に重要
・学ぶべきは、そもそもミドルウェアが動いているOSにあるというのが個人的な見解
投稿元:
レビューを見る
実際のサービス開発・運営経験から書された良書。
最先端でなかなか情報がない大規模webサービスについて、まとめて書かれており、非常に参考になりました。
投稿元:
レビューを見る
まさに大規模システムならではの工夫や課題を列挙した一冊。単なるハードウェアのスケールアップだけではなくて、ちゃんと高速化も考えてどうするべきかについて、ハードウェア、システム構成、アプリケーションアルゴリズムごとに分かりやすく工夫を紹介しています。単なるありきたりのシステム設計を紹介するのではなくて、大規模ならではの特性を踏まえて対策を紹介しているので、非常に分かりやすいです。特に大規模システムに携わっている人なら必携です。
投稿元:
レビューを見る
はてなのインフラ担当者が「どうやって大量のデータをさばくインフラを構築するか」を主題に様々なアプローチを解説してくれます。
もともとインターン生を対象とした講義を書籍に焼き直したものらしく、僕のような非エンジニアでも十分に理解することができました。
DBサーバとウェブサーバのスケールアップ・スケールアウトの違いや、アルゴリズム・キャッシュ・インデックス・冗長化など、「基本情報で何となく知ってたけどよく分からなかったこと」を知識として意味のあるレベルにまで持ってこれたと思います。
良書でした。
投稿元:
レビューを見る
WEBサービスの環境構築とか設定方法といったハウツー本ではない。
大量データ、大量アクセスを捌け、且つ柔軟に拡張可能なシステムを設計するのに必要な考え方、ノウハウが盛りだくさん。
↑のために情報系の大学でやるようなコンピュータの基本動作原理等も解説してくれている良書だと思う。
アプリケーション開発者向けに書かれている(はてなの新人研修講義が元ネタらしい)けどインフラエンジニアが読んでも非常に為になる。
コンピュータの基本動作原理については
小田圭二さんのこれ↓と一緒に読むと更に分かりやすいかも。
「絵で見てわかるOS/ストレージ/ネットワーク データベースはこう使っている」
投稿元:
レビューを見る
大規模なシステム組むときに読んでおくといい本。
だけど、厚すぎて読む気が萎える。
やっと読んでもあんまり頭に入ってなかった…
そんな仲間には薄い・イラスト多い・色多い!な本をオススメする。
つまりこれば逆の本。
投稿元:
レビューを見る
読み終わって1か月くらいで内容を忘れた。なんだったっけ?新しい技術とかノウハウとかわりと楽しいんだろうけど、どういう風に品質を管理してるかって書いてあったっけかな?また確認しよう。
投稿元:
レビューを見る
はてなのインターンシップでの教育、講義内容をベースに、大規模サービス技術の解説を行っている本。
大規模サービスというと海外が先行しているイメージですが、この本の内容も十分すごくて、大規模サービスを提供するシステムを構築する際の様々な工夫、ノウハウを知ることが出来ます。といいますか、ここまで情報をまとめて本として出せるのがすごいですね。
工夫点としては、メモリ、キャッシュの有効活用といった基礎的だけどよく効く内容から、MySQL のインデックスの効果、スケールアウト戦略、圧縮や計算量のオーダを落とす工夫など。著者たちが実際に大規模システムを構築、運用してきた経験、苦労から得られたノウハウなので、生々しいです。実際にこうやったらこうなった、だからこういう教訓が得られたという話題が多くて、試行錯誤の過程も見られるのが読んでいて楽しいですね。
また、アルゴリズムの知識や選択に関する話題も多めです。検索エンジンの実装についても載せられており、知見に富んだ内容となっています。実装の前の章で、転置インデックス、形態素解析、再現率と適合率といった解説から入るので、理解しやすかったです。
更に、終盤に運用面の情報として、スケーラビリティや可用性を高める工夫、稼動監視の効率化や安価で高速なハードの検討といったインフラ面の話題も載せられています。
投稿元:
レビューを見る
「はてな」を例に、サービスの提供拡大とともにシステムインフラの構築・拡張の変遷や、大規模サービスならではの課題(大規模データ、負荷分散、冗長性)に対する実際の対応などを知ることができる貴重な内容。
投稿元:
レビューを見る
著者の大規模Webサービス(Mobage)でのDBの運用ノウハウが詰まっている。運用のノウハウを広く浅く学べるので、大規模サービスで動くDBの設計、開発、運用をするなら一読する価値がある。
投稿元:
レビューを見る
読んで良かった。旬はだいぶ過ぎていて、あーはーん、な感じなのだけど、皆さん、読んでますよね。なんとなく、今回、再読。なんとなく。
投稿元:
レビューを見る
まだ第5回までしか読んでいないが、モヤモヤしていた事がスッキリ晴れた印象。
以外ページと合わせて読むと、より理解が進む。
http://blog.yuuk.io/entry/large-scale-infrastructure#%E3%81%AA%E3%81%9C%E8%A4%87%E6%95%B0%E3%81%AE%E3%82%B5%E3%83%BC%E3%83%90%E3%81%8C%E5%BF%85%E8%A6%81%E3%81%AA%E3%81%AE%E3%81%8B
あと、特別編も読んどく。
第6回以降は必要に応じて読んで行けば良いかなー。
投稿元:
レビューを見る
もともとはてなのインターシップ講義の内容をベースしている本著。基礎的な知識を踏まえつつも、より実践に近い内容が多いなとおもいました。大規模サービスというとインフラに近いレベルの話が多いのかと思っていましたが、アルゴリズムの項も大きくページが取られていたのが印象に残りました。
投稿元:
レビューを見る
実務的なコードとかは書かれていない。大規模なサービスを構築するときのノウハウについて書かれている。
実践に移すことはないが興味があったので。
1回 大規模Webサービスの開発オリエンテーション
どの程度が大規模Webサービスなのか、あと概要。
2回 大規模データ処理入門
はてなブックマークを例にしたデータ処理の入門
データをメモリに載せることができないので遅くなる。計測してボトムネックになっているところを探して対策する。
3回 OSのキャッシュと分散
OSのキャッシュ機構をつかう。サーバーを複数持って分散させる。
4回 DBのスケールアウト戦略
MySQLの分散ノウハウ
5回 大規模データ処理[実践]入門
省略
6回 [課題]圧縮プログラミング
省略
7回 アルゴリズムの実用化
アルゴリズムの選択は大事。例Suffyx Array(接尾辞書配列)Trie(トライ木)
8回 [課題]はてなキーワードリンクの実装
省略
9回 全文検索技術に挑戦
grep型、Suffix型、転置インデックス法
10回 [課題]全文検索エンジンの作成
省略
11回 大規模データ処理を支えるサーバ/インフラ入門
クラウド、自前どっち?
12回 スケーラビリティの確保に必要な考え方
まずは負荷を計測すること
13回 冗長性の確保、システムの安定性
基本サーバー台数を増やす。CPUの稼働率に余裕を持たせる。
14回 効率向上作戦
冗長性を高めると稼働率が落ちる。そこで仮想化技術を使う(VMware,Virtual PC,Parallels,Xen)
15回 Webサービスとネットワーク
ネットワークに階層構造を持たせる
特別編 今どきのWebサービス構築に求められる実践技術
省略
2010年ごろの本ですでにこれだけの対策が必要なんですね。今頃はどうやっているのでしょう?