2016-09-22 13 views
1

私は、外部アプリケーションによって使用されるTCompactProtocol上にapiを提供する既存のJava高速度サーバを持っています。私はJSクライアントにサービスするために同じサービスのTJsonProtocolサポートを追加する必要があります。TCompactProtocolとTJsonProtocolを提供する単一の倹約のJavaサーバ

私は、下位プロトコルのラッパーTMultiplexedProtocolを使用して、リトリーブ多重化を使用できることを理解しています。しかし、これは最初にルックアップを使用するためにクライアントコードの変更が必要であり、また、私はthrift JSライブラリのTMultiplexedProtocolに対する多くのサポートを見逃しています。

オンラインとドキュメントの例では、同じプロトコルとトランスポートを使用して複数のサービスを使用してthirft多重化を見ただけです。複数のプロトコルをサポートすることはできませんか?

答えて

1

例では、私は、同じプロトコルとトランスポートを使用して複数のサービスを使用してthirft多重化を見ただけです。複数のプロトコルをサポートすることはできませんか?

正確に、またはあなたの場合:残念ながら。 TMultiplexProtocolは、複数のサービス間で1つの物理エンドポイントを共有するように設計されています。これは、すべてのサービスが同じプロトコル/トランスポートスタックを使用する必要があることを意味します。

コンパクトおよびJSONプロトルドを並列で使用するような要件が異なる場合は、2つの物理的なエンドポイント(ソケット、パイプ、URLなど)が必要です。

関連する問題