2016-07-30 112 views
1

我正在使用流星创建一个多人游戏的财富游戏轮。我对Meteor很新,我觉得我构建这个的方式太糟糕了......我的电脑开始听起来像是为升空做准备,然后我的服务器最终崩溃:发布到所有连接的客户端 - 流星服务器崩溃

我有我的服务器上运行一个计时器的代码,它不断地广播/发布给所有连接的客户端。现在我已经设置好了,所以我的服务器正在对MongoDB文档进行大量写入(每51ms)。然后,我发布了MongoDB文档,让所有的客户端都订阅它,以便他们都看到相同的计时器。

在我还使用流星内置的“observeChanges”检查时,计时器命中0.00和客户端我然后调用一个函数来转动车轮。

所有这一切看起来像是一个荒谬的做法,它会杀死我的CPU。什么是最好的建立一个能够跨所有连接浏览器广播/发布相同数据的Meteor应用程序。

游戏是这样的......这里面有下降到0.00 30秒计时器,然后调用一个函数旋转命运之轮。

我错过了什么?

回答

1

你做这一切错了,你不应该运行在服务器上的计时器不断地改变蒙戈记录,做定时器客户端,只是给他们的启动信号,或者以其他方式同步他们,但不使用数据库并以这种方式出版,这样做是一个可怕的想法。

我希望它有帮助。

+0

谢谢你的评论。你有没有例子说明你会如何给他们一个启动信号或同步他们? –

+0

我想,你可以用出版物作为一个启动信号,为客户提供数量有限的临时解决方案。我没有具体的解决方案,但我认为那里必须有更好的解决方案。所以继续搜索,或者询问更具体的问题。 –

+1

您应该检查流星论坛过多,流星人都比较活跃在那里。 –