node.js - 带有 Amazon Load Balancer 的 Socket.io,应该转发哪些端口?

标签 node.js amazon-web-services socket.io load-balancing ports

我有一些作为亚马逊实例运行的 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/

相关文章:

amazon-web-services - AWS Kinesis 和 EventBridge 有什么区别

ios - Socket.IO malloc:***错误:无法分配区域

node.js - Yarn - Node Sass 还不支持我当前的环境

python - Windows 8 : `node-gyp rebuild` Exit status 1 installing contextify as dependency of zombie

node.js - 为什么 npm 包经常使用 require 的相对路径(例如 ../../file)?

node.js - 如何在 Windows 环境中从 Rake 任务调用 Nodejs 来编译一些 LESS 文件?

java - Vertex.value() 属性未找到 Gremlin Neptune Java

python - 在一个 AWS Redshift 实例下创建(虚拟)多个数据库

node.js - Socket.io 和 Backbone

javascript - node.js : socket. 中的 socket.io 发出在 socket.disconnect 之前未完成