我正在为 heroku 上的实时聊天应用程序开发 node.js 后端。当我正在研究 dyno 和扩展 node.js 后端的方法时,我可以看到 dyno 在 http 服务器上的优势,因为每个 dyno 都可以独立于其他 dyno(这在大多数情况下都可以)。
我的问题是:如何扩展和处理实时 socket.io 应用程序的负载平衡?从我正在阅读的内容来看,测功机是“沙盒化”的容器:每个测功机都运行自己的进程,独立于其他测功机..那么处理问题的最佳方法是什么?
我正在考虑一个解决方案,但它一点也不优雅或漂亮:
我可以有多个后台作业,其中包含可以检查该实例上连接的用户的新消息的 crons。但我认为必须有更好的解决方案。