首先,我的标题可能定义不明确或具有误导性,但它几乎试图将我的问题概括为一个整体。
我进行了很多搜索,但没有完全回答我的问题。
socket.io 通过 MemoryStorage (socket.get/socket.set) 分配内存是如何工作的,大约一个 socket.set 使用多少内存?套接字断开连接时是否正确释放内存?可选:在 v0.11.0-pre 中是否有任何我应该注意的已知内存泄漏?
JavaScript 的 GarbageCollector 如何处理在全局范围内声明的对象和关联数组?当我“删除”这样的键值对时,内存最终是否被释放:“delete object[key];”?还是 RAM 会随着客户端请求的增加而继续增加?
选项 1 和 2 相互比较如何?在增加和最终释放内存时,我应该在全局声明的“映射”上使用 socket.set 吗?可选:在性能(“执行”socket.get/object[key])方面,它们如何相互比较?
至于我的项目的基本信息,我正在用 Node.js(单进程)开发一个游戏服务器,预计它可以接受与单个服务器可以处理的一样多的客户端(在扩展到服务器集群之前)。可选:关于我的项目,在加载和内存方面我还应该注意什么?
感谢您的宝贵时间,非常感谢!