首页 > 解决方案 > 在 Node.JS 中跨测功机保存对象的最佳方法

问题描述

我使用 Express 和 Socket.io 使用 Node.JS 编写了一个简单的多人游戏(从 2 到 8 名玩家),它由 Heroku 托管。每个游戏的状态都保存为一个包含每个活动游戏的Object内部。Array我刚刚意识到,如果一次有太多游戏,Heroku 会将用户分散到几个 dynos (~servers) 上,这会在扩展时带来问题。

一旦需要几个测功机,某些实例可能无法访问全局Array. 一个好的解决方案是使用数据库而不是内存。但是,我很难确定哪种解决方案最适合我的情况。

每个游戏Object都由服务器频繁操作以反映游戏的当前状态的一个表示。哪种解决方案最适合我的游戏而无需重写整个代码?

标签: node.jsdatabaseobjectherokusocket.io

解决方案


推荐阅读