【问题标题】:Why is Gaze consuming high CPU?为什么 Gaze 会消耗高 CPU?
【发布时间】:2016-12-22 14:27:02
【问题描述】:

我正在运行凝视 (https://github.com/shama/gaze) 来观察包含数百个文件的多个文件夹的变化。现在该进程消耗了稳定的 15% 的 CPU,这意味着四个核心中有一个完整的核心。

我进行了检查 - 我在同一个文件夹列表上运行 fs.watch,并获得了具有类似功能的 0.0% CPU。

现在,问题是 - 除了阅读代码之外,我如何弄清楚凝视在做什么?有什么分析工具吗?

此外,您是否已经知道问题可能出在哪里?

系统详情: 操作系统 10.10 节点 6.9.1 凝视 1.1.2

【问题讨论】:

    标签: javascript node.js filesystems profiling


    【解决方案1】:

    原因原来是 fs.watchFile 的使用,默认的 gaze 间隔为 100 毫秒。 Node 原生函数的默认间隔是 5007 毫秒(根据文档 - https://nodejs.org/docs/v6.9.1/api/fs.html#fs_fs_watchfile_filename_options_listener),因此使用间隔 === 5007 调用凝视可以解决问题(以及在凝视源中注释掉 fs.watchFile)。

    我现在担心的是 fs.watch 和 fs.watchFile 都被使用了,其中一个可能是多余的,但这是另一个问题。

    附:我尝试使用 node --prof 来分析该过程,但没有找到对我有用的信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-11-18
      • 1970-01-01
      • 1970-01-01
      • 2019-06-19
      • 2018-10-22
      • 2015-05-18
      • 1970-01-01
      相关资源
      最近更新 更多