2017-01-06 16 views
0

私はgRPCが新しく、私の理解では、チャンネル/スタブはスレッドセーフですが、スタブはすべてのスレッドに対して単一の接続を使用しますか?はいの場合、スループットはそれ以下ではありませんか?そうでない場合は、接続プールを作成する必要がありますか?スタブはマルチスレッドのgRPCクライアントのためにチャネル上で単一の接続を使用しますか?

答えて

1

スタブは軽量です。チャネルは接続を保持します。チャネルは、エンドポイントへの仮想接続です。ゼロまたは多数のTCP接続を持つ可能性があります。

非常に高いスループットで、複数の接続を使用すると有益な場合があります。短期的には、複数のチャネルを使用することでそれを達成できます。しかし、理想的には、単一のチャネルを使用し、同じエンドポイントへの複数の接続を使用するLoadBalancerを使用します。今日はそれほど可能ではありません。うまくいけば1.2でサポートされ、便利な実装を提供します。

関連する問題