
项目里更新了一个依赖版本,这个依赖的新版本增加了其他依赖。然后在项目构建时,node 内存爆了。。。z 有什么方法能排查根因吗
1 wangritian 331 天前 如果是我,先加一倍同内存容量的页面文件/交换区快速试试水 |
2 sagaxu 331 天前 先不要排查,排查出来大概率只能降版本,无法根治,建议先尝试调高 heap 的大小。node 使用的 v8 引擎,默认 heap 最多只能使用 1/4 物理内存,如果是 8G 的机器,heap 上限只有 2G ,已经不能满足很多 uild 任务了。 |
3 june4 331 天前 先试试一个简单的办法,可以省一些内存 LD_PRELOAD=/usr/lib/libjemalloc.so npm/node ... |
4 LASockpuppet OP @sagaxu 把 node 调到了 6g ,还是爆了,感觉是新依赖里面循环依赖导致的,用的是 webpack 4 |
5 fengYH8080 331 天前 把 package-lock.json 和 node_modules 删了重新下载一遍依赖,如果怀疑是循环依赖,可以全局装个 madge 检查下项目有没有循环依赖 |
8 zurmokeeper 287 天前 可以尝试下使用 node --inspect-brk index.js (启动文件名),然后用 chrome 链接,打一下内存快照,然后分析下内存占用 |
9 LASockpuppet OP 这个确实是循环依赖的问题,然后后面改了下 npm 的依赖解析方式,cnpm 模式下就会有这个问题 |