#node.js #linux #docker #websocket
Вопрос:
Я обнаружил проблему со случайным сбоем подключения к WebSocket с кодом 1006 в моем приложении.
У меня есть такая конфигурация:
Приложения install-websocket-proxy, meter-install и meter-checkout являются node.js приложения, которые запускаются как контейнеры docker. Модули взаимодействуют через службу MQTT (mosquito).
«Приложение для установки» — это приложение для смартфона, которое подключается через «wss» к общедоступному серверу. На общедоступном сервере есть прокси-сервер apache, который перенаправляет трафик на установку-пример websocket-сервера:
Что я заметил, так это то, что случайным образом соединение разрывается и возникает ошибка с кодом 1006. Я использую библиотеку «ws»: «^7.5.5», и приложение запущено на узле изображения docker:10-alpine.
Если я попытаюсь подключиться с помощью какого-либо клиента WebSocket напрямую к прокси-серверу Install-webscoket, соединение будет постоянным, и с этим не возникнет никаких проблем. Проблема возникает только в том случае, если клиент получает доступ к WebSocket через wss.
Вот пример журнала, который я получаю:
Есть идеи, что может быть не так или как правильно проверить, что происходит?