WebSockets не работают с HTTP / 2 подсистемой балансировки нагрузки в GCP - PullRequest
0 голосов
/ 06 января 2020

У меня есть приложение, работающее за балансировщиком нагрузки в Google Cloud Platform.

Когда я использую протокол HTTPS в бэкэнде, я могу соединиться с WebSockets, и все соединения WebSocket работают нормально. Однако, когда я изменяю внутренний протокол на HTTP / 2, я не могу подключиться из приложения, и он возвращает ответ 502 Bad Gateway.

Могу ли я использовать WebSockets с HTTP / 2 или сделать Мне нужно выполнить некоторую настройку, чтобы использовать WebSockets с бэкэндом HTTP2?

1 Ответ

0 голосов
/ 09 января 2020

Как прокомментировали другие, WebSockets не поддерживаются в HTTP / 2, и именно поэтому вы получаете ошибку 5XX.

Сказав, что функциональность WebSocket достижима (и улучшена) с HTTP / 2 ref .

Если у вас есть существующий код, работающий с WebSocket, может быть не здорово переписать и бэкэнд, и интерфейс.

Однако, если вы разрабатываете новый асинхронный сервис, рекомендуется взглянуть на схему HTTP / 2 + Server Sent Event (SSE).

...