[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ)
- 技術評論社 (2010年7月7日発売)
- Amazon.co.jp ・本 (352ページ)
- / ISBN・EAN: 9784774143071
作品紹介・あらすじ
大規模サービスを開発・運用する技術者のための入門書。OSや計算機の動作原理、DBの分散方法、実践的なアルゴリズムをシステムに組み込む実装、大規模データを料理する検索エンジンのしくみ、システム全体を見渡すためのインフラ設計の知識と、多方面にわたります。
感想・レビュー・書評
-
実務的なコードとかは書かれていない。大規模なサービスを構築するときのノウハウについて書かれている。
実践に移すことはないが興味があったので。
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年ごろの本ですでにこれだけの対策が必要なんですね。今頃はどうやっているのでしょう?詳細をみるコメント0件をすべて表示 -
「はてな」を例に、サービスの提供拡大とともにシステムインフラの構築・拡張の変遷や、大規模サービスならではの課題(大規模データ、負荷分散、冗長性)に対する実際の対応などを知ることができる貴重な内容。
-
大規模なシステム組むときに読んでおくといい本。
だけど、厚すぎて読む気が萎える。
やっと読んでもあんまり頭に入ってなかった…
そんな仲間には薄い・イラスト多い・色多い!な本をオススメする。
つまりこれば逆の本。 -
大規模なウェブサービスを運営するに当たって必要な事柄が簡潔にまとまっており読みやすい。日本国内のほぼ全てのウェブサービスがこの書籍で想定している規模に入るだろう。ビギナー向けの本ではないので、一歩先を目指す中級者、復習したい上級者にオススメ出来そう。
-
河田からのオススメ
図書館では落札済みで、近日貸出可能になりそう
【要約】
・
【ノート】
・ -
内容は少し古いけれども、
大規模サービスのインフラからアプリまでの勘所が学べる。 -
Web屋としては読んでおくべき本だった記憶がある
-
大規模サービスというか、はてなのサービス本
-
もともとはてなのインターシップ講義の内容をベースしている本著。基礎的な知識を踏まえつつも、より実践に近い内容が多いなとおもいました。大規模サービスというとインフラに近いレベルの話が多いのかと思っていましたが、アルゴリズムの項も大きくページが取られていたのが印象に残りました。
-
まだ第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回以降は必要に応じて読んで行けば良いかなー。