Heroku + socket.io 广播上的多个测功机

Posted

技术标签:

【中文标题】Heroku + socket.io 广播上的多个测功机【英文标题】:Multiple dynos on Heroku + socket.io broadcasts 【发布时间】:2013-01-23 03:33:26 【问题描述】:

我似乎遇到了一个问题,当我有超过 1 个测功机时,我在 Heroku 上的 node.js 应用程序中的 socket.io 广播似乎不起作用。一旦我将它缩放到 1,它就可以完美运行。有什么我需要知道的吗?也许有一种不同的方式可以向所有测功机广播?如果我需要提供更多信息或代码,请告诉我。

【问题讨论】:

【参考方案1】:

如果您在多个测功机/服务器上运行,则必须配置 socket.io 以使用非内存会话存储,如 RedisStore。 socket.io documentation has details 还有更多讨论here。

【讨论】:

嗯,它以前似乎可以工作,但现在我发现它偶尔可以工作 - 有时它只是排队,我一次得到多个项目。您知道是否还有其他需要配置的内容或与 client.broadcast.to('some room') 不同的调用?

以上是关于Heroku + socket.io 广播上的多个测功机的主要内容,如果未能解决你的问题,请参考以下文章

Heroku 上的 Socket.io:客户端代码

Heroku上的Socket.io“会话ID未知”错误

heroku 多个测功机 socket.io

Chrome 中的“意外响应代码:503”。也许与heroku上的socket.io有关?

Heroku 上的 Socket.io 聊天应用程序与 node.js

Socket.io 在 Node.js + Redis + Heroku(多个测功机)环境中发出并不总是收到