Socket.io和Heroku一起工作吗?

我试图find这个问题的答案,我能find的所有东西都是旧的“不,不”,或者“将来它会”。

我尝试了socket.io-redis没有用。 在Heroku上,一个测功机将创build工作套接字,不止如此,你将从Socket.io中得到以下错误,这意味着没有缩放。

{“code”:1,“message”:“Session ID unknown”}

在我看来,WebSocket“支持”Heroku声称对开发者来说实在是一个残酷的玩笑。

编辑: Heroku支持websockets,但它不会用与Redis的socket.io群集。 所以我只运行一个专用于套接字的实例。 当我想用Heroku使用套接字。

披露:我是Heroku的Node.js平台所有者。

tl; dr:我们在私人testing版中提供了多测头socket.io支持。

Heroku完全支持WebSocket,它不需要会话关联,与socket.io不一样。

Socket.io是一个更高层次的软实时抽象,它使用WebSocket作为其众多潜在传输之一。 Socket.io 确实需要会话关联,并且socket.io(在Heroku或其他地方)的任何多节点事件共享实现都需要socket.io-redis(或类似的)。

粘滞会话的大多数实现都会打破12 因子体系结构 。 我们现在已经为socket.io,meteor和sockjs用户运行了一个灵活的,可扩展的flip-a-switch粘性会话testing版。 如果您想join,请发送电子邮件至hunter@heroku.com; 我们将在接下来的几周内向公众开放。