2011年4月22日金曜日

Twitter Searchも Thriftを採用したらしい

【これはすごい】Twitter検索を3倍高速化した記事の翻訳 - nokunoの日記
BlenderはNettyを使って構築されたThriftとHTTPのサービスである。NettyとはJavaで書かれた高スケーラブルなNIO(JavaのNew IOライブラリ)クライアントサーバーライブラリであり、Nettyによって様々なプロトコルのサーバーやクライアントを素早く簡単に開発できるようになる。我々は他の様々な競合、例えばMiraやJettyの中からNettyを選んだ。なぜならNettyはクリーンなAPIとよいドキュメントを持っていたし、より重要なことにTwitterの他のプロジェクトがこのフレームワークを使っていたからだ。NettyをThriftと組み合わせるために、我々は簡単なThriftのコーデックを書いた。ソケットから読み込むときにはNettyのチャンネルバッファから来るThriftのリクエストをデコードし、ソケットに書きこむときにはThriftのレスポンスにエンコードできるようにした。

ThriftはFacebookが作ったプログラム連携用のプロトコル。プログラム言語を越えてやりとりでき、わりとオーバーヘッドが少ないらしい。
キャズムを超えるか?

0 件のコメント:

ブログ アーカイブ

カテゴリー