jvm调优常用命令

灰太狼 2022-06-08 02:51 360阅读 0赞

一、ps+top+jstack,查看cpu过高的线程信息
1、lsof -i:8401 通过启动的端口号查找进程ID
2、top -Hp pid 获取线程耗费cpu或时间最高的线程号
3、printf “%x\n” 21742 将线程号21742转化16进制
4、jstack pid | grep 54ee

二、ps+top+jmap+jhat,查看线程堆内存使用信息
1、ps aux|grep mypro 通过ps命令查找进程ID
2、top -Hp pid 获取线程
3、jmap -dump:format=b,file=/tmp/dump.dat 21711 对21711的进程进行Dump
4、jhat -port 9998 /tmp/dump.dat jhat使用9998端口查看命令
5、10.10.32.158:9998 在浏览器中输入主机地址:9998查看
6、在页面上搜索WebappClassLoader,找到他的上级引用,一层一层点进去往上找,直到找到相关联的类信息

三、jmap
jmap:查看类加载器与持久代信息,还可查看堆内存信息,执行dump命令将信息导入文件中
jmap -heap 21711 查看进程堆内存使用情况—-观察各个分区情况
jmap -histo:live 21711 | more 查看进程堆内存详细使用情况
jmap -dump:format=b,file=/tmp/dump.dat 21711 对21711的进程进行Dump
还有其它工具TProfiler

四、jstack
jstack 21711 查看进程下所有线程栈信息,检查是否死锁

五、vmstat 180 20 3分钟(180秒)统

发表评论

表情:
评论列表 (有 0 条评论,360人围观)

还没有评论,来说两句吧...

相关阅读

    相关 [JVM] 参数

    > 随着Java应用程序的不断发展和优化,JVM调优已经变得越来越重要。在这篇文章中,我们将探讨一些常用的JVM调优参数,了解如何更好地优化Java应用程序的性能。 ----