Azureサービスバスを使用するようにSignalRを設定するときは、何か不足しているはずです。私は3つの定数インスタンス(現在)を実行するために私のApp Service(API - Web API 2)のセットアップを持っています。起動時に、APIはService Bus接続文字列を使い、適切なトピック接頭辞を設定します。Azureサービスバス経由のSignalR
フロントエンドでは、SignalRはAPIに接続できますが、メッセージはクライアントによって受信されることがあります。私の前提は、クライアントは最初に接続したサーバーからのメッセージしか受信しないということです。これは、私がSignalRがサービスバスを正しく使用していないと信じさせています。 Azure経由でサービスバスを見ると、トピックが作成されているのがわかりますが、いずれのトピックにもメッセージはありません(サブスクリプションも表示されます)。
私が知る限り、クライアントとサーバーの間のSignalRは、サービスバスを経由する代わりに直接接続を使用しています。 クライアントがSignalR接続用のAPIのURLを使用していることに注意してください。 - これは正しいですか?
上記のコードは、インスタンスごとに実行SignalRConfig(アプリの起動中)
var serviceBusConnectionString = configHelper.SignalR.ServiceBusConnectionString;
var serviceBusTopicPrefix = configHelper.SignalR.TopicPrefix;
Logger.Info("SignalR: configuring");
// Use the service bus, if specified.
if (serviceBusConnectionString != null && serviceBusTopicPrefix != null) {
Logger.Info("SignalR: using service bus");
GlobalHost.DependencyResolver.UseServiceBus(serviceBusConnectionString, serviceBusTopicPrefix);
}
app.MapSignalR();
これが正しいかどう、私は考えています。多分私は複数のトピックを見ています。 - signalr_topic_my-app-staging_0
私はこの(旧式)チュートリアルに従うことを試みてきました。5.
あなたはどのナゲットパッケージを使用していますか?チュートリアルのナゲットパッケージは推奨されなくなりました。 Microsoft.AspNet.SignalR.ServiceBusを使用する必要があります。 – Thomas
最新の 'Microsoft。*。SignalR *'は、必要に応じて詳細を与えることができます。私は自分のPCの前に戻ってきます。 –