Среди транспортов, помимо TCP и WebSocket, gRPC — распространённый выбор. Он построен на HTTP/2 и имеет свой характер.

Чем он выделяется

  • Мультиплексирование: HTTP/2 позволяет многим запросам делить одно соединение, сокращая повторные рукопожатия и сглаживая слабые сети.
  • Удобство для CDN: многие CDN нативно поддерживают HTTP/2 / gRPC, так что он хорошо сочетается с CDN для сокрытия источника.
  • Похож на обычный API: gRPC — распространённый протокол связи сервисов, поэтому форма трафика неприметна.
Партнёрский материалОткуда взять ссылку на подписку?Партнёрский сервис даёт 1 ГБ высокоскоростного трафика Гонконга при регистрации — импорт в один клик.Получить быстрые серверы

Против WebSocket

WebSocket универсальнее и максимально совместим; gRPC выигрывает на долгих соединениях и мультиплексировании, но некоторые CDN или промежуточные устройства обрабатывают gRPC плохо, что делает его менее стабильным. Оба следует запускать с TLS.

Главное в конфиге

Ключ — serviceName, он должен совпадать на обеих сторонах, это аналог path из WebSocket. На внешнем слое также добавьте TLS.

Без конкретной сетевой проблемы WebSocket и gRPC ощущаются похоже — не переусложняйте. Если WS часто отваливается, попробуйте gRPC и посмотрите, стабильнее ли.