У меня возникают случайные проблемы с подключением SignalR при использовании служебной шины Windows Azure в качестве объединительной платы. Проблема отладки заключается в том, что это происходит случайным образом (без каких-либо изменений кода), но когда это действительно происходит, требуется некоторое время, прежде чем оно исчезнет. Обычно я пытаюсь закрыть визуальную студию, перезагрузить, переключиться на longpolling, закрыть iis express или что-то еще и не могу точно определить, что, кажется, исправляет. Возможно, проблема в самой лазурной службе.
Я настраиваю журналы, и вот что возвращается: Информация о SignalR.ServiceBusMessageBus: 0: Подписка на 5 тем в служебной шине ... Ошибка SignalR.ServiceBusMessageBus: 0: Не удалось создать подписку или тему служебной шины : Поставщик токенов не смог предоставить токен безопасности при доступе к 'https://x-sb.accesscontrol.windows.net/WRAPv0.9/ ». Поставщик токенов вернул сообщение: "Не удалось разрешить удаленное имя:" x-sb.accesscontrol.windows.net ".
Я читал другие сообщения с той же ошибкой, но, похоже, они не связаны.
Моя конфигурация SignalR выглядит так:
GlobalHost.DependencyResolver.UseServiceBus(connectionString, "MyTopic");
var userIdProvider = new UserIdProvider();
GlobalHost.DependencyResolver.Register(typeof(IUserIdProvider), () => userIdProvider);
app.MapSignalR();
Когда я переключаюсь на longPolling, он временно работает, но затем снова начинает давать сбой. SignalR начинает игнорировать параметр longPolling и все равно пытается использовать веб-сокеты.
Как только я удаляю UseServiceBus, все работает правильно, но с ним у меня возникают всевозможные проблемы: либо он не подключается, либо пытается использовать веб-сокеты, даже если указан longPolling (что приводит к сбою).