Я надеюсь, что это не слишком не по теме для сообщения здесь.
У меня есть служба webAPI asp.net, которая предоставляет несколько маршрутов для получения данных в режиме реального времени (например, в течение 10 секунд), что требовало от клиентского приложения опроса изменений.
Я исследую, на какой технологии лучше всего добавить услугу push-уведомлений «opt in», которая просто выдвигает «тонкие» полезные данные, чтобы сообщить клиентскому приложению об этом.Теперь пришло время вызвать существующий маршрут REST для обновления.Таким образом, полезная нагрузка push невелика и не содержит каких-либо конфиденциальных данных (она все равно получает это с помощью существующей инфраструктуры безопасности REST)
Облачные сообщения
Ранее мне говорили, что для мобильного приложения я должен использовать что-то вроде облачных сообщений Firebase или какую-либо другую службу обмена сообщениями, однако это не похоже на правильное решение для «уведомлений на основе подписки».Я говорю здесь.Я, конечно, вижу, что это было бы полезно, если клиент находится на устройстве iOS или Android, и ему нужны сообщения / уведомления / сигналы тревоги (и т. Д.), Которые также могут работать, когда приложение не запущено, но это не кажется правильнымвещь для использования этих уведомлений об измененных данных (что может происходить постоянно, иногда каждые 5 секунд).Кроме того, я не хочу ориентироваться только на эти мобильные устройства, но также, например, на веб-приложение или приложение для настольного компьютера, которое также может использовать ту же службу REST
Другие технологии
Я видел упоминание Web sockets
, или, в случае asp.net, вариант использования SignalR
(который обернет веб-сокеты, с отступлением).SignalR выглядит неплохо, но меня беспокоит доступность клиентских библиотек для не веб / Windows приложений (например, iOS, Android).Я также смотрю на Крючки для отдыха .Это выглядит интересно, но я не совсем понимаю, что такое «толкающий механизм»;Похоже, им нужно POST подписчику с использованием HTTP, что означает, что подписчик должен также выступать в роли «конечной точки сервера».
Сразу после любых мыслей / лучших практик по этому вопросу или того, что использовали другие?
В частности, (проверка или иное), что для этого варианта использования использование облачных сообщений не является правильным выбором из-за частоты этих push-уведомлений (то есть, когда мой сервер попадает вприложение через другую стороннюю службу, которая выдвигает на устройство / приложение)
Заранее благодарен за любые предложения!