Когда следует использовать ASP.NET Core SignalR
SignalR предоставляет веб-функции в режиме реального времени. Помните, что Contoso Pizza требуется прямая схема для отслеживания состояния и доставки заказов. Снижение продаж в часы пиковой нагрузки побуждает команду найти более эффективное решение, чем опрос на стороне клиента.
Условия принятия решений
Зная, когда не выбирать SignalR, так же важно, как знать, когда выбрать его. При использовании веб-функций в реальном времени взаимодействие с пользователем приложения зависит от скорости реагирования. Лучше понять, какие части приложения требуются для обновления в режиме реального времени.
Когда не следует использовать SignalR
Службы SignalR надежна настолько, насколько надежно ее базовое подключение. Иными словами, если возникает проблема с подключением клиентского приложения, использование SignalR будет не лучшим вариантом.
Еще один вопрос — масштабируемость SignalR. В зависимости от количества параллельно подключенных клиентов веб-сервер может столкнуться с состязанием за ресурсы при достижении заданных лимитов. В таких ситуациях, скорее всего, потребуется развернуть приложение в ферме серверов и использовать объединительную плату. Самостоятельная реализация может быть утомительной.
Кроме того, эту проблему можно решить с помощью Служба Azure SignalR. Вы также можете устранить ее, используя различные механизмы обеспечения устойчивости и аварийного восстановления.
Пример модальностей SignalR
SignalR можно использовать в локальной среде, в облаке или со Службой Azure SignalR.
Допустимые варианты использования
SignalR не является заменой традиционных HTTP-запросов. Приложения могут использовать SignalR, чтобы выяснить, когда следует выполнять определенные HTTP-запросы. Таким образом, они дополняют друг друга.
Существует множество допустимых вариантов использования SignalR. В следующем списке представлены доступные сценарии использования SignalR:
- Приложения, требующие высокочастотных обновлений с сервера:
- Игры
- Социальные сети
- Голосование
- Аукционах
- Приложения GPS
- Панели мониторинга и приложения мониторинга:
- Панели мониторинга организации
- Динамические карты
- Мгновенные обновления продаж
- Оповещение путешественников
- Страницы конвейера непрерывной интеграции и непрерывной поставки (CI/CD)
- Интерактивные приложения для совместной работы и многопользовательских приложений:
- Приложения для доски
- Приложения для собраний
- Приложения для совместного использования документов
- Visual Studio Live Share
- Приложения, требующие мгновенных уведомлений:
- Приложения электронной почты
- Приложения чата
- Пошаговые игры
- Отчеты по временным рядам
- Действия GitHub, системы устранения проблем и запросов на вытягивание
Сценарий Contoso Pizza
Если вы думаете о возможности использования решения для опроса на стороне клиента в обновляющейся карте заказов Contoso Pizza, SignalR может стать хорошей альтернативой. Как и во всех решениях по программированию и архитектуре, важно взвесить преимущества и недостатки SignalR.