node 内存溢出的解决方案

转载自:https://blog.csdn.net/genius_yym/article/details/80854729

本博客提供两种 node 内存溢出(FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory)的解决方案。


现象描述

项目开发中,当项目过大的时候,node内存溢出而停止build项目,即是项目构建过程中频繁报内存溢出:FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory


解决方案一:通过 package.json 中的 "pro" 加大内存

/* package.json 文件 */
"scripts": {
    "pro": "node --max_old_space_size=9000 build/build.js "
  }
  •  

解决方案二:使用 increase-memory-limit 插件,增加node服务器内存限制

/* package.json 文件 */
"devDependencies": {
	"increase-memory-limit": "^1.0.6",
},
"scripts": {
	/* 添加 fix-memory-limit */
    "fix-memory-limit": "cross-env LIMIT=4096 increase-memory-limit"
  }
  • 新增依赖包npm install --save-dev increase-memory-limit,或者在更新package.json后重新 npm install 全量更新依赖包
  • 执行npm run fix-memory-limit(只需执行一次即可)
  • 重启项目即可

或者:

全局安装increase-memory-limit
npm install -g increase-memory-limit
进入工程目录,执行:
increase-memory-limit

你可能感兴趣的:(node 内存溢出的解决方案)