Javascript 通过Azure服务总线发送信号

Javascript 通过Azure服务总线发送信号,javascript,c#,azure,signalr,azureservicebus,Javascript,C#,Azure,Signalr,Azureservicebus,在设置Signal以使用Azure服务总线时,我一定遗漏了什么。我将我的应用程序服务(API-Web API 2)设置为运行3个常量实例(当前),在启动时,API使用服务总线连接字符串并设置适当的主题前缀 在前端,SignalR能够连接到我的API,但消息只是有时由客户端接收。我的假设是,客户机只从它最初连接的服务器接收消息。这使我相信信号器没有正确使用服务总线。通过Azure查看服务总线时,我确实看到正在创建主题,但其中没有任何消息(我也看到订阅) 所以,据我所知,客户端和服务器之间的信号器仍

在设置Signal以使用Azure服务总线时,我一定遗漏了什么。我将我的应用程序服务(API-Web API 2)设置为运行3个常量实例(当前),在启动时,API使用服务总线连接字符串并设置适当的主题前缀

在前端,SignalR能够连接到我的API,但消息只是有时由客户端接收。我的假设是,客户机只从它最初连接的服务器接收消息。这使我相信信号器没有正确使用服务总线。通过Azure查看服务总线时,我确实看到正在创建主题,但其中没有任何消息(我也看到订阅)

所以,据我所知,客户端和服务器之间的信号器仍然使用直接连接,而不是通过服务总线。注意,客户端正在使用API的URL进行信号器连接——这是否正确

信号配置(在应用程序启动期间)

上面的代码针对每个实例运行,我不知道这是否正确。也许这就是我看到多个主题的原因,例如,
signar\u topic\u my-app-staging\u 0
--0到5


请注意,我已经尝试遵循这个(过时的)教程:

您的代码似乎正确,应该针对每个实例运行

服务总线中应该有6个主题:信号器主题{topic_PREFIX}0到信号器主题{topic_PREFIX}5


每个实例是否使用相同的主题前缀名称?如果他们使用不同的主题名称,那么这将解释您看到的行为。

您使用的是哪个nuget软件包?教程中的nuget包已弃用。您应该使用Microsoft.AspNet.signal.servicebust最新的
Microsoft.*.signal*
,如果需要,可以提供详细信息,我会回到电脑前面。它们使用的主题名称与实例的自动缩放/精确副本相同。我是否在客户端上使用了正确的URL?
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();