一.问题原因 用JMeter压测,有时候当模拟并发请求较大或者脚本运行时间较长时,JMeter会停止,报OOM(内存溢出)错误. 原因是JMeter是一个纯Java开发的工具,内存由java虚拟机JVM管理,当内存回收不及时,堆内存不足时,就会报内存溢错误. 概念补充: 内存泄露:应用使用资源之后没有及时释放,导致应用内存中持有了不需要的资源. 内存溢出:应用的内存已经不能满足正常使用了,堆栈已经达到系统设置的最大值,进而导致崩溃. 通常都是由于内存泄露导致堆栈内存不断增大,从而引发内存溢出.…