コンテンツへスキップ
uencoder

Thrift Protocol

Thrift プロトコルは Apache Thrift の RPC ワイヤフォーマットである。Binary/Compact/JSON など複数のエンコーディングと、TBufferedTransport/TSocket などのトランスポートをサポートする。

目的

コンパクトで効率的なバイナリメッセージエンコーディングと、多言語 Thrift RPC 向けのトランスポート抽象を提供する。

メカニズム

TBinaryProtocol は型タグ + フィールド ID + 値を厳密なバイナリとして書き出す。TCompactProtocol は varint + zigzag で圧縮し、TJSONProtocol は JSON としてエンコードする。トランスポート層は socket/buffer/http をラップする。

ユースケース

  • Facebook 内部の RPC
  • 多言語サービス間の通信
  • Hadoop のサービス間通信

関連ツール

References