【发布时间】:2018-06-02 13:37:46
【问题描述】:
我们在尝试通过google load balancing 将socket.io 连接到node.js compute engine 实例时遇到一些问题。
如果我从浏览器直接连接到node.js 的外部IP,一切正常。
如果我尝试通过load balancing(这将是生产架构)连接到同一个node.js,socket 会一直断开连接。
我们尝试使用 sessionAffinity 配置负载平衡但没有成功。
有什么建议吗?谢谢
【问题讨论】:
-
你肯定需要会话亲和性。您还应该查看负载均衡器配置中的超时设置。我认为它默认为 30 秒。
-
也有一些问题,会话亲和性(ip)开启,后端超时为 24 小时,nginx 保持活动状态为 650,建议。我在 mt“测试”环境中运行没有负载均衡器的同一个应用程序,我没有问题。
-
@Rhangaun 请试试这个cloud.google.com/compute/docs/load-balancing/http/…。我的团队在使用 Azure 负载均衡器时遇到了类似的问题,并且粘性会话有所帮助。请让我知道它是否有效,如果有效,我会将其发布为答案。
-
@GandalftheWhite 你读过我的评论吗 -> “会话亲和性 (ip) 已开启”。
标签: javascript node.js socket.io google-cloud-platform