技術者教育の視点で読む「大規模サービス技術入門」
[Web開発者のための]大規模サービス技術入門 ― データ構造、メモリ、OS、DB、サーバ/インフラ 2010/7/7日 伊藤直也,田中慎司 著 [Web開発者のための]大規模サービス技術入門 (Amazonで書籍情報を表示) この本の冒頭にある「本書について」には以下のように書かれています。 本書は、大規模サービスを開発・運用する技術者のための入門書です。 インフラレベルから(主に全文検索を例とした)アプリケーション開発まで、大規模サービスを構築するために必要な技術が俯瞰的に述べられています。 ところで「はてな」では毎年夏に学生向けの就職体験を目的としたインターンシップを実施しているとのことで、インターンシップ企画を通じて、「はてな」では大規模サービス技術の教育方法が体系化されたとのことです。 本書では、このインターンシップでの講義をベースにして、大規模サービス技術を解説することを試みています。 私はこの本が出版された当時に買って読みました。しかしその時は興味あるところだけつまみ食いしただけで正直言えば印象が薄かったのですが、最近読み返したところ「教育方法の体系化」という点で非常に興味を持ちました。 今となっては少し古めの本かもしれませんが、本書に書かれている具体的な技術以上にとても勉強になり、面白さを感じたため取り上げることにしました。 <本の内容> はてなインターンシップの講義ベースと書き下ろしで構成されており、授業を受けている感じで進みます。私の学生時代にはこのような機会は無かったのですが、このようなインターンシップを体験できる学生さんが羨ましい。。。 【目次】 第1回 大規模Webサービスの開発オリエンテーション―全体像を把握する Lesson 0 本書の源 ―本書で説明すること,しないこと Lesson 1 大規模なサービスと小規模なサービス Lesson 2 成長し続けるサービスと,大規模化の壁 Lesson 3 サービス開発の現場 第2回 大規模データ処理入門 ―メモリとディスク,Webアプリケーションと負荷 Lesson 4 はてなブックマークのデータ規模 ―データが大きいと処理に時間がかかる Lesson 5 大規模データ処理の難所 ―メモリとディスク Lesson 6 スケーリングの要所 Lesson