【随手记】前端多模块项目内存溢出
客怎眠qvq2024-03-282024-07-26
前言
最近起公司的前端项目又爆内存了,忘记之前是怎么配置的,这篇博客用于备忘。
问题描述
一个很臃肿的前端多模块项目,对应后端的多个 springboot
模块项目,前端每次启动都会对所有的包进行打包,影响启动速度,内存也很容易爆掉。
报错如下:
代码语言:javascript复制(node:28820) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 upgrade listeners added to [Server]. Use emitter.setMaxListeners() to increase limit
(Use `node --trace-warnings ...` to show where the warning was created)
FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
解决方案
1、使用 npm
安装插件
npm install -g increase-memory-limit
2、项目启动前,在终端运行对应命令
代码语言:javascript复制increase-memory-limit
# 或者下面这句
increase-memory-limit.cmd
3、在项目的 vue.config.js
中注释掉对应的内存限制行
console.log("CPU 数量", require('os').cpus().length)
console.log(require('v8').getHeapStatistics())
// args[0].memoryLimit = 4096; 这行限制注释掉
4、根据统一认证登录和单点登录的需要,修改 loginType
5、运行项目
代码语言:javascript复制npm run serve
# 或者
npm run dev
参考链接
引用站外地址
JavaScript heap out of memory
CSDN