2017-05-29 5 views
0

私はAzure Services Busでいくつかのパブリッシュ/サブスクリプションをしようとしています。すべてがうまくいくはずですが、接続文字列からクライアントを作成しようとすると、接続にはかなり時間がかかります。クライアントの作成には約22秒かかります。Azureサービスバス、クライアントの作成に長時間を要する

これはやっています。

最初に接続すると、新しいクライアントを作成するのに2msかかることがあります。ですから、ほとんどの場合、紺碧への接続を作成し、セキュリティのコンテキストを確認することです。

私の質問は、ほかの誰にとってもそれほど遅いのですか? (もしそうでなければ私はそれが遅くなる私たちのネットワークの設定だと思う)高速であるかもしれないクライアントの接続と作成を行う別の方法はありますか?

敬具 マグナス

+1

どのデータセンターに接続していて、他のデータセンターを試しましたか? –

+0

SubscriptionClientの作成を確認しましたが、最初は7秒かかりました。私はMicrosoft.ServiceBus.dllをチェックして、クライアントが接続をキャッシュしていることを発見しました。後者の新しいクライアントの作成は高速になります。 –

+0

私はあなたと同じコード行でSubscriptionClientを作成するために全く同じ21〜22秒を見つけました。同じ結果を持つ最も近い2つのデータセンターを使用します。私は制限付きネットワーク上にいることを知っています。ファイアウォールによってhttp/sのトランスポートに限定されるかもしれません。私はまだそれがそれほど長くかかるはずだと確信していません。 – pseabury

答えて

0

ServiceBus SubscriptionClientコード(GitHubで利用可能な場合)は見ていませんが、長い遅延は通常のTcpトランスポートを使用できないネットワーク上のConnectivityModeおよびフォールバックメカニズムとはまったく関係しています。 httpsへのプローブ/フォールバックには約20秒かかります。

私が知っているすべてのインストールがHttpsであることが分かっているインストールで、ServiceBusにHttps(自動検出フォールバックを避けるため)を使用するよう手動で伝えた場合、各SubscriptionClientに対して約1秒かかる。私はクライアントのトランスポート選択メカニズムがおそらく少し速いと思う。とにかく、ここに方法:

ServiceBusEnvironment.SystemConnectivity.Mode = ConnectivityMode.Https; 

私はこれを手動でこれを制御するために使用します。

+0

こんにちは、答えをありがとう、私はそれを考え出した、ちょうど私の質問をここでサイトで忘れてしまった。 :) –

+0

'ServiceBusEnvironment'はGitHubで利用できない古いクライアントから来ています。 –

+0

誰かがこれを追跡している場合に備えて、これを使って相互参照する問題を作成しました。 - https://github.com/Azure/azure-service-bus/issues/151 – pseabury

0

私は自宅からの接続を行うことを試みたが、それは仕事から代わりに22のわずか1~2秒かかりました。だから私は、低速接続の原因となっている作品のネットワーク設定に何かがあると思います。

私は仕事場でインフラストラクチャーの人に話し、理由を探すのを願っています。彼らがうまくいかない場合は、私たちが使用できるものではありません。最初の接続後の方が速い場合でも、最初の接続では22秒かかりますが、これは簡単な方法です。

関連する問題