Apache Thrift

Apache Thrift（アパッチ スリフト）は、「スケーラブルな言語間サービス開発」のためにFacebookにて開発された遠隔手続き呼出し (RPC) フレームワークである。これはソフトウェアスタックとコード生成エンジンを組み合わせることで、C++、C#、Java、Perl、Python、PHP、Erlang、Rubyなどの言語間にて効率的かつシームレスに動作するサービスを開発することを可能とする。

 特長 
Thriftの長所に以下のものがある。

 SOAPなどの類似フレームワークより低いオーバヘッドによる言語間シリアライゼーション。
 簡潔かつ明瞭なライブラリ。追加のコーディングが必要となる他のフレームワークがない。XML設定ファイル不要。
 言語バインディングが分かりやすい。例えば、JavaではArrayList<String>を用いる。またC++ではstd::vector<std::string>を用いる。
 アプリケーションレベルwireフォーマットとシリアライゼーションレベルwireフォーマットは明確に分かれている。それぞれ別個に変更が可能である。
 バイナリ、HTTP互換およびコンパクトバイナリなどが所定のシリアライゼーションスタイルである。
 Camlウェブサービスにより拡張可能である。
 ビルド依存や非標準化されたソフトウェアを含まない。ソフトウェアライセンスは全て互換性がある。

 関連項目 
 GoogleのProtocol Buffers
 シスコシステムズのEtch
 ZeroCのICE
 インタフェース記述言語

外部リンク
 Apache Incubator site: Thrift
 https://github.com/facebook/fbthrift — Facebook による Apache Thrift のブランチ
 Thrift tutorial

Thrift
Category:ソーシャル・ネットワーキング・サービス
Category:遠隔手続き呼出し
Category:オープンソースソフトウェア
Category:アプリケーション層プロトコル
Category:データシリアライゼーションフォーマット
Category:Metaのソフトウェア