2016-11-12 5 views
0

Есть ли недостаток, если мы используем однопользовательский групповой метод вместо сохранения идентификаторов и соединений в списке, как указано в ссылке ниже. Если это так, мы можем избежать сохранения связей в памяти или базе данных. Пожалуйста, совет, это сделает какие-либо проблемы с веб-фермой.метод однопользовательской группы в signalr

https://www.asp.net/signalr/overview/guide-to-the-api/mapping-users-to-connections

ответ

1

Согласно моему пониманию, вы можете отобразить одно подключение к одной или нескольким группам. И это сопоставление должно быть в основном в зависимости от ваших потребностей. Например, следует ли уведомлять только одного пользователя об изменении или группе пользователей.

Однако это может быть проблематичным для сценария веб-фермы. Чтобы уменьшить масштаб, вы можете использовать объединительную плату, где каждое приложение публикует на объединительную плату и объединительную плату для уведомления обо всех экземплярах приложения (серверов в веб-ферме). Существует 3 возможных варианта объединительных плат: служебная шина Azure, Redis и SQL-сервер.

Для получения дополнительной информации вы можете проверить https://www.asp.net/signalr/overview/performance/scaleout-in-signalr.

+0

Спасибо, можем ли мы объединить объединительную плату в MySQL? –

+0

Или можно упомянуть mysql connectionstring в преобразователе зависимостей. GlobalHost.DependencyResolver.UseSqlServer (sqlConnectionString); –

+0

Я никогда не пробовал (даже сервер SQL, моя предпочтительная объединительная плата - Redis, хотя я еще не использовал это). Тем не менее, этот механизм использует сервис-брокера SQL Server, и я не уверен, что что-то подобное можно сделать с MySQL или нет, поскольку я не использовал MySQL много. Может быть, это требует другого вопроса :) –

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

  • Нет связанных вопросов^_^