稳定性测试JVM内存监控

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yiqin3399/article/details/79830602

在weblogic中配置应用启动参数,加入如下参数来生成gc日志,供测试进行JVM内存分析。

-verbose:gc -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -Xloggc:/home/ap/epsvc/domains/SVCDOM/servers/mSrv1/logs/gc_mSrv1.log

在非功能稳定性测试案例执行时,分析应用生成的gc日志来判断JVM内存使用是否正常。使用HPJmeter打开生成的gc_mSrv1.log,主要查看Summary和Heap Usage After GC 页:

1、查看Summary页,重点查看图1所示两项参数, 表示GC与Full GC时间占比,如果超过5%, 首先检查内存配置是否合理 (参考值Heap Size设置一般应用为2G,特殊应用可以配置为4G或更多,Perm Size建议范围是256M~768M)。如果内存配置不合理,可能存在内存泄露或导致GC频繁.

 

图1 Summary页信息

2、 查看Heap Usage After GC页,图2和图3中黄色点为Fullgc点,需要进行重点关注。

 

图2  2个小时GC曲线

 

图3  12小时GC曲线

如果遇到gc日志文件较大,可以通过左键选中稳定性执行区间然后放大进行查看。

3、 结果分析:

(1) 正常情况下,gc回收的频率均匀,full gc 的黄色点按照水平直线分布。如果full gc后,黄色点有线性增长的趋势,则说明可能存在内存溢出。出现该情况,需要给出特殊说明(如应用存在内存数据缓存等特点,说明缓存数据量的大小,是否有限制或者清理策略等)。

(2) 如果在稳定性测试时间内未发生2次Full GC(黄色点), 说明系统的负载较低 , 有条件的情况下将稳定性测试时间延长,保证至少出现2次Full GC,且2次Full GC后 Heap 内存差值小于Heap 总内存的20%。


猜你喜欢

转载自blog.csdn.net/yiqin3399/article/details/79830602
今日推荐