Mongodb tailable游标,高CPU使用率 – nodejs + mongodb

您好我一直在尝试使用mongodb tailable光标来获取我的graphics上的实时数据,到目前为止,这是所有好的一些小问题..其中一个主要问题是与高CPU使用率,我第一次调用与以下选项设置mongo tailable查询

tailable: true, awaitdata: true, numberOfRetries: -1 

CPU的使用率接近8-10%,之后,每增加一个请求,它就会以相同数量的负载增加。

但是当我改变它

 tailable: true, awaitdata: false, numberOfRetries: -1, tailableRetryInterval: 200 

CPU使用率下降,这是很好的

awaitdata {Boolean},awaitdata允许游标等待数据,只适用于可放大游标。

tailableRetryInterval {Number},tailableRetryInterval指定可拖动游标上的getMores之间的毫秒数。

我的问题是,closuresawaitdata和使用tailableRetryInterval这是很容易在CPU或更好我做错了什么?

  1. 10%的CPU使用率不算什么。 真。 使用的资源是很好的资源,因为它们实际上被用于比闲置更有用的东西 。 当然,直到一定的门槛。
  2. 当你减less可检测光标的时间间隔时,就像你一样,当然CPU的使用更less。 这真的取决于你的用例是怎样的。 如果你能忍受这样一个事实,那就是在进入处理之前有一定的延迟,这很好。 但是通常情况下,你希望事情得到尽可能快的处理。 另外请记住,当您等待一段时间时,多个条目可能已经进入封顶的集合 – 并且它们的处理可能需要时间和CPU周期。 我倾向于尽可能地保持CPU负载,并且不惜一切代价来防止尖峰。 因为不同原因造成的尖峰同时发生,所以你有麻烦了。
  3. 很难说,如果你做错了什么,除非我们知道你的function和非function的要求,约束,用例或一行代码。