「大規模サービス技術入門」を読む
[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ) | |
伊藤 直也 田中 慎司 技術評論社 2010-07-07 売り上げランキング : 3225 Amazonで詳しく見る by G-Tools |
自分はサーバの運用をしているわけではないので、具体的な実装方法とかさておき、読み物として読んだ。
自分にとってのポイントをピックアップして、メモとして残す。
- 第2回 大規模データ処理入門
- 大規模データは何が難しいか
- メモリ内で計算できない。
- ディスクを読んでいる。
- メモリはディスクの10^5〜10^6倍以上高速(探索)
- 転送速度 メモリ:7.5GB/sec、ディスク:58MB/sec
- CPU負荷のスケーリング⇒ロードバランサ
- I/O負荷のスケーリング⇒難しい(DB)
- 大規模データを扱うための勘所
- いかにしてメモリで済ませるか⇒キャッシュ機構
- アルゴリズム、データ構造
- データ圧縮、情報検索技術
- 第3回 OSのキャッシュと分散
- キャッシュできない規模になったら、スケールさせる⇒局所性(アクセスパターン)を考慮した分散
- 第6回 圧縮プログラミング
- 第11回 大規模データ処理を支えるサーバインフラ入門
- クラウドコンピューティング
- メリット:スケーラビリティ
- デメリット:サービス独自の仕様に対応する必要がある。あいまいなロードバランサ
- 第12回 スケーラビリティの確保に必要な考え方
- レイアごとのスケール
- APサーバ⇒容易
- データソース⇒readの分散:容易、writeの分散:難しい
- 第14回 効率向上作戦
- 仮想化サーバの構築ポリシー
- ハードウェアの利用効率の向上
- 仮想化のデメリット
- パフォーマンス上のオーバーヘッド
- メモリが安価に
- 8GBで1万円(2010年)
- SSD
- メモリほどではないが十分に高速
- 第15回 Webサービスとネットワーク
- ネットワークの分岐点
- 1Gbps(PCルータの転送能力の限界)
- 500ホスト超え(1サブネットに配置できるホスト数の限界)