如何解决内存溢出的问题

目录
文章目录隐藏
  1. 内存溢出主要原因分析
  2. 解决思路
  3. 思路 2 具体解决方案

webpack 运行 npm run build 内存溢出 JavaScript heap out of memory

vue-cli3.0 构建的项目,开发过程中,可能会遇到内存溢出的情况,改动一点代码,代码编译,进程就会断掉,报JavaScript heap out of memory 内存溢出的错误

内存溢出主要原因分析

    1. nodejs在执行 JavaScript 时,内存受到 v8 限制,64 位约为 1.4g,32 位 0.7g
    2. 限制内存原因:垃圾回收时,js 线程会暂停执行(避免 JS 应用逻辑与垃圾回收器看到的不一样),大量的堆内存回收严重影响性能

解决思路

  1. 通过webpack进行打包优化,降低单个文件大小,比如使用dll,这个思路不是本节讲授重点
  2. 扩大node内存

思路 2 具体解决方案

通过解决 increase-memory-limit 的包升级版来解决

1. 安装两个 npm 包: increase-memory-limit-fixbugcross-env

npm install increase-memory-limit-fixbug cross-env -g

2. package.json中 添加如下脚本

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

如何解决内存溢出的问题

3. 执行fix-memory-limit脚本

npm run fix-memory-limit

4. 重新运行项目即可

npm run build

补充

如果使用increase-memory-limit而不使用increase-memory-limit-fixbug,执行完npm run fix-memory-limit,需要手动清除掉标注的地方,但是标注的地方是依赖的包文件,生产环境不好操作,所以increase-memory-limit-fixbug是对其优化,在解决内存溢出问题基础上专门解决此问题的

如何解决内存溢出的问题 解决内存溢出问题

「点点赞赏,手留余香」

0

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
码云笔记 » 如何解决内存溢出的问题

发表回复