最近読んだ本(大規模サービス技術入門, Java: The Good Parts)
大規模サービス技術入門
[Web開発者のための]大規模サービス技術入門 ―データ構造、メモリ、OS、DB、サーバ/インフラ (WEB+DB PRESS plusシリーズ)
- 作者: 伊藤直也,田中慎司
- 出版社/メーカー: 技術評論社
- 発売日: 2010/07/07
- メディア: 単行本(ソフトカバー)
- 購入: 75人 クリック: 1,807回
- この商品を含むブログ (120件) を見る
大規模サービスと聞くと、インフラの冗長化やスケールアウトのための構成をいかに構築するか、という話になりがちだと思うけど、この本では大量のデータに対しキーワードリンクや全文検索を実現するためのアルゴリズムについて分量を割いているのがおもしろい。
インターンシップの課題でサービス開発だけではなく、アルゴリズムの課題を出すのはすばらしいと思う。最近は全文検索にしろ必要なパーツはオープンソースから調達して組み合わせて手早くサービスを構築するというスタンスになりがちだが、車輪の再発明の学習効果は高い。
スケール手法については、QConでのTwitterの方の講演を私も聞いたが、最初はどこでも似たようなこと(DB分割など)を試したうえで、それぞれのサービスに適した手法に辿りついているんだろう。最終的なノウハウやオープンソースとして公開されたツールがあるからと言って、苦労せずにスケールさせられるということもないんだろうな、と思う。
私は今のところ大規模サービスとは対局のソフトウェアを開発していますが、上で書いたアルゴリズムの話など非常におもしろかった。
Java: The Good Parts
- 作者: Jim Waldo,矢野勉(監訳),笹井崇司
- 出版社/メーカー: オライリージャパン
- 発売日: 2011/02/24
- メディア: 大型本
- 購入: 2人 クリック: 141回
- この商品を含むブログ (36件) を見る
『JavaScript: The Good Parts』をイメージして、Javaの実用的なベストプラクティスを期待して読むと多分がっかりする。そういう場合にはEffective Javaを読んだほうがいい。RMIとCORBAの話とか、ジェネリクスの導入時にVM仕様に変更を加えず実現する方式を選んだとか、『Beautiful Code』的な読み物が好きな人ならば楽しめるんじゃないかと思う。かといってJavaに興味がない人が読んでおもしろい内容とも思えないので、、読者層が難しいかも。。