Для двустороннего live-чата обычно подходит WebSocket, для односторонней браузерной ленты — SSE, для типизированного межсервисного streaming — gRPC. Выбор меняется при других требованиях.
Выбор WebSocket, SSE и gRPC для чата, котировок и сервисов
Для двустороннего live-чата обычно подходит WebSocket, для односторонней браузерной ленты — SSE, для типизированного межсервисного streaming — gRPC. Выбор меняется при других требованиях.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Для двустороннего live-чата обычно подходит WebSocket, для односторонней браузерной ленты — SSE, для типизированного межсервисного streaming — gRPC. Выбор меняется при других требованиях.
WebSocket даёт двусторонний канал, но требует собственной модели reconnect и сообщений. SSE проще для server→browser, использует текстовый поток и поддерживает повторное подключение; действия клиента можно отправлять HTTP-запросами. gRPC предлагает protobuf и streaming, но обычный браузер требует адаптации и имеет ограничения относительно нативного клиента. Во всех вариантах нужны авторизация, backpressure и восстановление после разрыва.