性能测试jvm常用分析
作者:互联网
1、查看top进程
top -H -p 23002
2、对某一个进程的线程分析
ps -mp pid -o THREAD,tid,time
printf "%x\n" 线程id --> 结果id
jstack 进程id| grep 结果id -A 30
***************************************************************
例:
ps -mp 120833 -o THREAD,tid,time
printf "%x\n" 121119 17a33 17a40 8138 d157 1af64
jstack 120833|grep 1d91f -A 1000
jstack 96781 | grep 'java.lang.Thread.State' | awk '{print $2$3$4$5}' | sort | uniq -c
查看内存占用、实例情况
jmap -histo:live 96781| head -n 100
查看各个代的内存情况
jmap -heap 87897
导出内存dump
jmap -dump:live,format=b,file=liyc.dump 25920
分析内存:
JHat -J-Xmx1024M filename
线程gc
jstat -gcutil 44909 5000 2
查看加载类
jstat -class 44909 5000 20
*********************************************
echo 1 > /proc/sys/vm/drop_caches:表示清除pagecache。
echo 2 > /proc/sys/vm/drop_caches:表示清除回收slab分配器中的对象(包括目录项缓存和inode缓存)。slab分配器是内核中管理内存的一种机制,其中很多缓存数据实现都是用的pagecache。
echo 3 > /proc/sys/vm/drop_caches:表示清除pagecache和slab分配器中的缓存对象。
标签:常用,测试,drop,线程,内存,分配器,jvm,pagecache,id 来源: https://blog.csdn.net/flyingfairy123/article/details/100543593