2017-01-18 9 views
0

私はgRPCベースのリモーティングフレームワークに取り組んでおり、サービスが登場したときに自分のサービスレジストリが登録される独自のサービスレジストリを作成しました。もちろん、カスタムのNameResolverを使用してクライアントを検索することもできます。ダイナミックNameResolverロードバランサが尊重しますか?

これは今動作していますが、実行時に(たとえばローリングアップグレードをサポートするために)サービスレジストリを変更したいので、NameResolverをチェックし続け、変更が発生したときにレジストリをonUpdateを実行します。問題は、私はこれを行うことができ、gRPCフレームワークが更新を尊重するかどうかです。

私は、ロードバランサがResolvedServerInfoのリストをチェックして、ロードバランシングの対象を知るようにしています。しかし、その点から、私はこれがどのように働くのかがはっきりしていません。それは毎回チェックを行い、NameResolverの更新を続けることが許されていますか?リスナー?

私が実装しようとしているサービス発見の重要な部分であるため、これが当てはまることを望みます。

おかげ

マグナス

答えて

0

NameResolverむしろアドレスの変更をポーリングするよりも、プッシュベースの更新情報を取得するために設計されています。必要なものを実現するには、顧客名リゾルバの名前を定期的に更新するタイマーを設定する必要があります。

関連する問題