【发布时间】:2012-09-25 18:26:53
【问题描述】:
我有一些 socket.io node.js 服务器作为亚马逊实例运行,当直接连接到一个实例时,我的 socket.io 应用程序可以在几毫秒内连接和重新连接。但是,当我通过负载均衡器引导应用程序时,应用程序的连接和重新连接速度要慢得多(需要 5 多秒)。
我已将负载平衡器配置为转发 TCP 端口 80,以及我的节点服务器侦听的端口(端口 3000)。 socket.io 是否需要任何其他端口才能以最佳方式运行?还是我的问题不是由端口引起的?
谢谢。
【问题讨论】:
-
您介意分享一下您是如何进行负载平衡的。您的 nodejs 实例前面有一个负载均衡器。 socketio 在另一个实例上,并通过负载均衡器访问 nodejs?在这种情况下,yo.u 是否也对 socket.io 进行了负载均衡?
-
不完全是,目前我的应用程序加载在单独的 PHP 服务器上并且没有负载平衡。 socket.io 服务器位于负载均衡器后面。我只需要将消息推送到到客户端而不是来自,因此客户端将被定向到可用服务器,当我推送消息时,它们将被推送到所有实例/服务器。希望能解释一下?
标签: node.js amazon-web-services socket.io load-balancing ports