首页 > 解决方案 > 最近通过 Digitalocean 负载平衡器连接 socket.io 时遇到问题(400 错误)

问题描述

我有一个 DO 负载均衡器,它后面有 4 个服务器,我一直在使用 socket.io 并在负载均衡器设置中启用了粘性会话,并且它已经工作了一段时间。

最近客户端根本无法连接,在连接时立即收到 400 错误。我根本没有改变我连接到套接字的方式。如果我确实要求传输只是来自客户端的“websocket”,它确实连接成功,但是我失去了轮询备份(socket.io 的主要好处之一)。

此外,直接连接到其中一个液滴可以按预期工作,因此问题肯定出在负载均衡器上。

有没有人知道应该为它与 DO 负载均衡器一起使用的任何类型的设置?最近有什么变化吗?

如果有帮助的话,我正在使用 Express 的 NodeJS 服务器上运行 socket.io。

编辑 #1:添加了 LB 设置的屏幕截图

DO LB 设置

标签: node.jswebsocketsocket.ioload-balancingdigital-ocean

解决方案


推荐阅读