我有一些作为亚马逊实例运行的 socket.io node.js 服务器,当直接连接到一个实例时,我的 socket.io 应用程序可以在几毫秒内连接和重新连接。但是,当我通过负载均衡器引导应用程序时,应用程序连接和重新连接的速度要慢得多(需要 5 秒以上)。
我已将负载均衡器配置为转发 TCP 端口 80,以及我的 Node 服务器监听的端口(端口 3000)。 socket.io 是否需要任何其他端 Eloquent 能发挥最佳功能?还是我的问题是由端口以外的原因引起的?
谢谢。
最佳答案
我意识到这与端口或类似的东西无关。亚马逊负载均衡器在第一次重新连接尝试时保持打开状态,直到它超时,这意味着第一次连接在超时或重新连接之前等待 60 秒。我无法减少 ELB 的超时,这是 AWS 论坛上的一个已知问题,并且已经存在了几年年。
关于node.js - 带有 Amazon Load Balancer 的 Socket.io,应该转发哪些端口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12566327/