2013-09-15 2 views
0

У меня есть сообщения, транслируемые моими работниками во все мои веб-экземпляры с использованием темы Service Bus. Затем каждый веб-экземпляр отвечает за передачу этих сообщений подключенным пользователям с помощью SignalR.SignalR: отправка сообщений только текущим подключенным серверам

Моя проблема заключается в том, что SignalR также использует служебную шину для отображения собственных сообщений для подключенного приложения приложений (это здорово!). Поэтому каждый веб-экземпляр «перенаправляет» сообщения от рабочих на служебную шину, создавая следующие проблемы: 1. сообщения передаются по X раз каждому подключенному клиенту (X = количество веб-экземпляров) 2. существует сто тысяч (до миллиона) сообщений в час и каждое сообщение через сервисную шину X + 1 раз (1 раз из рабочего + X раз из-за SignalR), что приводит к большему (бесполезному) Расходы на служебную шину

=> I «Я ищу способ сообщить SignalR только передавать определенные сообщения своим собственным подключенным клиентам без использования объединительной платы. Использование очереди для отправки сообщений от рабочих веб-экземпляров вместо темы частично решает проблему (сообщения передаются только один раз клиенту, но сообщения по-прежнему проходят через служебную шину дважды).

Любое решение? Спасибо!

ответ

0

Вы можете это сделать, написав свою собственную шину сообщений, которая является нетривиальной, но возможной.

+0

Жесткое решение для очень простой проблемы :( – Vincent

+0

«Простая» проблема – davidfowl

Смежные вопросы