java性能的一些惯用的命令与注意点
java性能的一些常用的命令与注意点java性能的一些常用的命令与注意点?一、常见的命令查看jvm内存的大致情况
java性能的一些常用的命令与注意点
java性能的一些常用的命令与注意点
?
一、常见的命令
查看jvm内存的大致情况jstat -gctuil 9623
查看跑的比较忙线程:看进程的线程信息,显示当前线程的一个cpu等利用率的情况:top -Hp 28340查看线程栈:jstack 28340>temp 其中的线程号为16进制。?转化为16机制:printf "%x\n" 28340
查看JVm中堆中对象的详细占用情况,输出的内容按照代销排序:导出整个JVM的堆的简要信息:jmap -histo 9623>maplist 或者?jmap -dump:live,format=b,file=heap.bin 9623JHat:分析工具,导出整个堆jhat -J-Xmx2028M [file] 直到出现 。。。再在浏览器中 打开http://ip:7000访问
Mat:内存分析工具首先,此分析比较全面,直接到网站下载mat,再运行。File->open file(选在需要分析的文件),后分析 1g文件大致在4m左右。
添加jmx监控,添加到java ops中。?-Djava.rmi.server.hostname=10.249.196.18?
?-Dprogram.name=longer?
?-Dcom.sun.management.jmxremote.port=9999
?-Dcom.sun.management.jmxremote.authenticate=false
?-Dcom.sun.management.jmxremote.ssl=false
二、注意点
如果堆比较大,可以缩小至1g左右分析,推的内容。在linux下,可以开启jmx。在图形化环境下连接下去,用jvisualvm查看,比较直观。