Могу ли я использовать gRp c в качестве замены SignalR для обновления уведомлений на стороне клиента? - PullRequest
0 голосов
/ 04 апреля 2020

Я новичок в gRp c и сейчас изучаю эту технологию

Мне интересно, может ли gRp c заменить SignalR для обновления панели уведомлений в моем клиентском приложении (React). Это тот случай? или я должен продолжать использовать SignalR по этому вопросу?

(я прошу его просто для того, чтобы убедиться, что я понимаю назначение технологии gRp c, по нескольким статьям, которые я прочитал, это скорее замена веб-API и несколько других сравнивают его с SignalR)

Спасибо! у-меня

Ответы [ 2 ]

1 голос
/ 15 апреля 2020

Если вы имели в виду браузерные клиенты, то NO вы не можете использовать gRP C. Протокол gRP C опирается на HTTP / 2 кадрирование и, в частности, возможность отправлять и получать HTTP-трейлеры. Хотя сами браузеры могут и используют HTTP / 2, текущие API-интерфейсы браузера (XHR / Fetch) не предоставляют семантику HTTP / 2.

Однако существует альтернативный протокол, gRP C -web , который поддерживает подмножество функций gRP C, которые вы можете использовать из приложения на основе браузера. Учитывая, что это другой протокол, ваш сервер должен будет поддерживать его, или вам нужно будет использовать прокси-сервер типа Envoy , который может переводить вызовы gRP C -web в gRP C.

0 голосов
/ 05 апреля 2020

Я не могу ответить на ваш вопрос, если он пригоден для обмена данными между сервером и клиентом, просто поделитесь некоторыми соображениями. SignalR предназначен для обмена данными между Клиентом и Сервером в режиме реального времени благодаря своей адаптивности, а gRP C по ограничениям (HTTP / 2 и HTTPS) больше зарезервирован для взаимодействия между внутренними микросервисами.

...