我们项目本地启动的时候刚开始内存占用比较少大约 1G 的样子,但是过段时间就会越来越多,大约两三天之后会到 1.8G ,我之前修改的 node 内存限制,但是到 1.9G 的时候还是会内存溢出,想问下这是什么原因,有什么解决方案吗?
|
lbunderwayMar 24, 2021
1
牛逼 启动就这么多,确定没写错
|
|
lovedebugMar 24, 2021
2
memory cache 用多了? 还是全局大对象?
|
|
MohansonMar 24, 2021
3
内存一直上涨不下降更多可能是“内存泄漏”, "内存溢出"是安全问题(内存越界, 缓冲溢出等等)
|
|
4
@lbunderway 项目比较大了,webpack 打包内存占用确实大了点
|
|
5
拍 snapshot 对比排查吧。
|
|
loveMar 24, 2021
6
告诉你一个神器:jemalloc,各发行版都带,用了都说好,效果太惊人了
LD_PRELOAD=/usr/lib/libjemalloc.so node ... --max_semi_space_size=8 上面这个选项最好也设置下 --max_old_space_size=256 这个可选,根据你的实际内存需要 |
|
page470075640Mar 24, 2021
7
开 inspect 然后拿到内存快照 用 Chrome 的内存工具 diff
|
|
wednesdaycoMar 24, 2021
8
snapshot 才是正途...也是个不错的经验
|