node.js - 在 Heroku 中没有 websockets 的实时 node.js 消息传递应用程序,我是否可以获得相同的功能?

标签 node.js heroku express websocket socket.io

我一直在 Heroku 上制作 node.jss + express + socket.io 应用程序。我最近意识到他们不支持 websockets,这将是实时通信的理想选择。他们强制你使用长轮询,它使用 http 代替。我想以正确的方式做到这一点,但另一方面,我不想再次设置这个项目,因为它只是一个概念证明/让我习惯 node.js。

正确的做法是什么?继续使用 heroku,然后可能稍后更改应用程序以使用套接字,或者重新开始使用与 heroku 不同的服务?这里要考虑的事情是我必须更改的代码量,以及坚持使用长轮询而不是 websockets 的功能损失。我不知道这些将如何实现。

谢谢

最佳答案

socket.io 使用 xhr-polling 代替 websocket 工作正常。性能不会那么好,但如今很少有云产品支持超过一个实例。

现在 nginx 已经支持 websocket,这可能很快就会改变。

关于node.js - 在 Heroku 中没有 websockets 的实时 node.js 消息传递应用程序,我是否可以获得相同的功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15173380/

相关文章:

java - REST API 端点的发现模式

git - GitHub 上的 ParsePlatform 上的 Parse-server 和 Parse-server-example 有什么区别?

node.js - 与 heroku 自定义域的连接不安全?

node.js - Node Express不执行动态添加的中间件

javascript - node.js 需要虚拟机脚本中的模块

javascript - 在没有脚本标签的 Jade 中单击按钮

javascript - Supertest 中的负面断言

php - 在 PostgreSQL 数据库的 bytea 字段中存储图像

javascript - 如何在nodejs中使用express get route从url中提取页面名称和authToken?

javascript - "next(' 路线 ')"不 't work with ".use()"