有没有处理过内存溢出问题
- 引发原因
- 上传文件过大,没有正确处理,导致一下子撑爆了内存,程序直接崩溃了。
- 导出堆转储文件进行分析
- 第一步,使用jmap命令手动生成Heap Dump文件:
jmap -dump:format=b,file=heap.hprof <pid>
- 第二步,使用MAT、Jprofiler等工具分析,查看内存中的对象占用情况。
- 如果生产环境的内存还有很多空余,可以适当增大堆内存大小来解决,例如 -Xmx4g参数。
- 或者检查代码中是否存在内存泄漏,如未关闭的资源、长生命周期的对象等。
- 在本地进行压力测试,模拟高负载情况下的内存表现,确保修改有效且没有引入新的问题。

浙公网安备 33010602011771号