我正在为带有Node.js后端的基于物理的游戏运行在线服务器。目前,该服务器一次可以处理10个游戏/世界,然后才需要执行下一个计时。
考虑到这一点,我使用nanotimer进行了严格的调度,以使世界的脚步不会彼此踩脚,但是顺序也意味着我只能在一个处理器上运行,因此我的AWS实例只有大约55%的CPU使用率。
我认为使用taskset是在我的实例上同时使用两个处理器的好方法,但有时由于我想象的是另一个外部进程正在运行,世界有时被阻塞了几秒钟。 / p>
如何防止这种情况发生?如果我使用两个处理器(不带任务集),那么一组世界运行得很好,但是我只使用了55%的处理器,这确实很昂贵。
任何帮助或建议都值得赞赏!