gpt4 book ai didi

node.js - Mongodb tailable游标,CPU使用率高-nodejs + mongodb

转载 作者:太空宇宙 更新时间:2023-11-03 23:39:11 24 4
gpt4 key购买 nike

嗨,我一直在尝试使用 mongodb tailable 游标来获取图表上的实时数据,到目前为止,一切都很好,但有一些小问题。主要问题之一与高 cpu 使用率有关,在我第一次调用 mongo tailable 查询时设置了以下选项

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

CPU 使用率几乎为 8-10%,此后对于每个额外的请求,它都会以相同的负载量增加......

但是当我将其更改为

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

CPU 使用率下降,一切都很好

awaitdata {Boolean},awaitdata允许游标等待数据,仅适用于tailable游标。

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

我的问题是,关闭awaitdata并使用tailableRetryInterval是否更好,这对CPU来说很容易,还是我做错了什么?

最佳答案

  1. CPU 使用率 10% 不算什么。真的。使用过的资源是好资源,因为它们实际上用于比闲置更有用的事情。当然,直到达到某个阈值。
  2. 当您减少检查可尾游标的时间间隔(如您所做的那样)时,CPU 使用率当然会减少。这实际上取决于您的用例。如果您可以接受在处理条目之前存在一定延迟的事实,那就没问题。但通常情况下,您希望尽可能快地处理事情。另请记住,当您等待一段时间时,多个条目可能已进入上限集合 - 并且它们的处理可能需要时间和 CPU 周期。我倾向于尽可能保持 CPU 负载均匀,并不惜一切代价防止峰值。因为当不同原因导致的峰值同时发生时,您就有麻烦了。
  3. 很难说您是否做错了什么,除非我们知道您的功能和非功能需求、约束、用例或单行代码。

关于node.js - Mongodb tailable游标,CPU使用率高-nodejs + mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26971077/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com