解决内存溢出问题
webpack 运行 npm run build 内存溢出 JavaScript heap out of memory
vue-cli3.0构建的项目,开发过程中,可能会遇到内存溢出的情况,改动一点代码,代码编译,进程就会断掉,报JavaScript heap out of memory 内存溢出的错误
内存溢出主要原因分析
- nodejs在执行JavaScript时,内存受到v8限制,64位约为1.4g,32位0.7g
- 限制内存原因:垃圾回收时,js线程会暂停执行(避免JS应用逻辑与垃圾回收器看到的不一样),大量的堆内存回收严重影响性能
- 通过webpack进行打包优化,降低单个文件大小,比如使用dll,这个思路不是本节讲授重点
- 扩大node内存
通过解决increase-memory-limit的包升级版来解决 1. 安装两个npm包: increase-memory-limit-fixbug 和 cross-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是对其优化,在解决内存溢出问题基础上专门解决此问题的
文章图片
【解决内存溢出问题】参考:
解决 vue 项目运行过程中内存泄漏问题
如果你觉得此文对你有一定的帮助,可以点击下方的【赞】收藏备用
推荐阅读
- Java并发编程 - 线程
- Linux|lvs+HAproxy/nginx+keepalived构造高并发解决方案
- vue|vue中代理解决跨域
- ROS|【无标题】URDF/COLLADA file is not a valid robot model.解决方法
- 游戏开发|huatuo 革命性热更新解决方案系列1·1 为什么这么NB(huatuo革命Unity热更新)
- PyCharm|PyCharm License Activation激活码失效问题的解决方法(图文详解)
- 第五章|第五章 内存管理—第30条:以ARC简化引用计数
- mysql|工作随笔(一)——docker和mysql容器搭建使用问题解决
- SQL|MVCC在重复读和读已提交场景以及幻读的解决
- Python|[解决方法]AttributeError: module ‘numpy‘ has no attribute ‘loadtxt‘