近日遇到一个老项目,通过webpack自己搭建的脚手架,只要npm run dev开始运行内存就持续增长,一直到百分之九十多,电脑卡死。为了找到原因,尝试了很多办法,包括

  1. 更换编译器运行(检查是否是编译器消耗内存)
  2. 运行其他项目(检查是否是当前项目的问题)
  3. 回滚代码(检查是否是代码造成内存泄露)
  4. 更换nodejs老版本(检查是否是nodejs版本过高)
    等等,折腾了一天还是没有找到原因
    打开任务管理器发现node.js serve-side javascript一直居高不下在这里插入图片描述
    最后,大致确定是webpack调用 fsevents 出错,然后频繁查找modules目录导致,,在webpack的配置文件中添加,情况得以缓解
watchOptions: {
      ignored: /node_modules/
    }

在这里插入图片描述
参考:https://webpack.docschina.org/configuration/watch/#watchoptions-ignored

然而,同样的代码我之前运行就没有这个问题,在同事电脑上运行也不会造成内存持续增加,所以也不晓得为什么,如果有同行遇到过这个问题或者知道什么原因,请评论或私信告知,万分感谢。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐