[报错] 内存溢出 FATAL ERROR: MarkCompactCollector: young object promotion failed Allocation failed

报错信息:FATAL ERROR: MarkCompactCollector: young object promotion failed Allocation failed - JavaScript heap out of memory
在这里插入图片描述
JavaScript堆内存不够,Node可调用的系统内存不够用了

第一步 全局安装 increase-memory-limit

npm install -g increase-memory-limit

第二步 在项目中执行

increase-memory-limit

在这里插入图片描述
package.json加上fix-memory-limit命令

"fix-memory-limit": "cross-env LIMIT=10240 increase-memory-limit"

这将将应用程序的最大堆内存大小限制设置为10GB(10240MB),也可以根据情况自由调整
在这里插入图片描述

第三步 启动

npm run serve

在这里插入图片描述
第五步 替换"%_prog%" %_prog% (就是去掉双引号)

1.在node_module下的.bin文件夹中查找
在这里插入图片描述
在这里插入图片描述



参考:

webpack打包、编译、热更新Node内存不足问题解决

nodejs内存溢出;‘“node --max-old-space-size=10240“‘ 不是内部或外部命令,也不是可运行的程序;解决办法

node 内存溢出,解决办法

  • 3
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这是一个 JavaScript 堆内存不足的错误,通常发生在使用大量内存的应用程序或代码中。这个错误信息的意思是,垃圾回收器试图将年轻对象提升到老年代时失败了,因为没有足够的内存可用。这可能是因为代码中存在内存泄漏或者需要增加堆内存限制。 ### 回答2: 这是 JavaScript 运行时的错误信息,它意味着 JavaScript 虚拟机已经无法为未使用的对象分配内存空间。简单来讲,当 JavaScript 要使用新的内存空间但没有足够的可用内存时,就会发生这个错误。 造成这个错误的原因可能有很多,其中最常见的情况是因为代码中存在大量的内存泄漏和不合理的内存使用。这个错误通常会在运行大型的程序或处理大量的数据时出现,特别是在 Node.js 等后端环境中。 解决这个问题有几种方法,一种是增加 JavaScript 对内存的限制。在 Node.js 中,可以通过 --max-old-space-size 参数来增加内存限制,例如: node --max-old-space-size=4096 app.js 另一种方法是优化代码,避免内存泄漏和不合理的内存使用。可以使用 Node.js 内置的 Heapdump 工具来分析 JavaScript 堆中的状态,以便找到内存泄漏。同时,还可以使用一些 Node.js 模块,例如 memory-usage 和 v8-profiler,来监测和优化内存使用。 总之,解决 fatal error: markcompactcollector: young object promotion failed allocation failed - javascript heap out of memory 这个错误需要理解 JavaScript 内存管理的原理,并采取相应的优化措施。 ### 回答3: 这个错误是由于 JavaScript 堆内存占用超过了其可用容量,导致垃圾回收机制无法完成 Young Generation (年轻代)对象的移动导致的。它通常会出现在 Node.js 应用程序执行期间,特别是处理大量数据或运行资源密集型任务时。 解决这个问题的最简单方法是增加 Node.js 堆内存的限制。可以在启动应用程序时使用 --max-old-space-size 参数来定义堆内存最大容量,例如: node --max-old-space-size=4096 app.js 这将将应用程序的最大堆内存大小限制设置为 4GB(4096MB),也可以根据情况自由调整。 此外,应用程序可能还需要进行代码优化来减少堆内存的使用。可以使用内存分析工具(如Chrome开发人员工具),分析应用程序的内存使用情况,识别内存泄漏,删除不必要的对象引用等等。 总之, fatal error: markcompactcollector: young object promotion failed allocation failed - javascript heap out of memory 错误是一种常见的 Node.js 应用程序问题,可以通过增加堆内存限制和代码优化来解决。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值