前端nodejs服务CPU爆表的原因和解决办法

另一个项目的前端离职了,中途接手该项目,在本地构建启动之后,发现nodejs的服务cpu占用率高达90%多,遂寻找原因和解决办法。

我已经做好了遇到问题和困难的准备。 — 某接盘侠

原因

本地开发时,通常会使用热更新服务,设置watch属性开启文件修改的监听。

// webpack.config.js
module.exports = {
  //...
  watch: true
};

当开启监听之后可以设置监听的方式watchOptions,其中有一个属性是poll,使用轮询方式监听文件是否修改,默认为false,当为true时,默认为毫秒级,也可以设置为数字。当其值为true时,就会导致cpu使用率变高

// webpack.config.js
module.exports = {
  //...
  watchOptions: {
    poll: 1000 // 每1000毫秒轮询一次
  }
};

解决办法

watchOptions设置为false或者一个比较大的数字即可。推荐设置为false,因为实际开发时不需要实时监听文件的修改,在保存ctrl + s时会自动触发检查。

参考

  1. node js cpu 100%
  2. Watch and WatchOptions
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值