性能相关命令总结(JAVA篇)

一、linux 部分

top

该命令可以简要的查看系统的cup、内存使用情况

 

sar

可以周期性的对内存和cpu进行采样

 

性能相关命令总结(JAVA篇)_第1张图片

 

 

vmstat

与sar类似,也能监控内存和cpu的使用情况。

性能相关命令总结(JAVA篇)_第2张图片

 

例如 

vmstat 1 3

 

iostat

提供详细的I/O信息

性能相关命令总结(JAVA篇)_第3张图片

 

pidstat

监控进程和线程的性能情况

性能相关命令总结(JAVA篇)_第4张图片

性能相关命令总结(JAVA篇)_第5张图片

 

jstack 打印所有线程信息

性能相关命令总结(JAVA篇)_第6张图片

 

查看cpu信息

cat /proc/cpuinfo 

 

查看服务器负载情况

uptime

查看系统日志。常见的oom kill 和tcp丢包,都会有记录

dmesg |tail

查看每个cpu的负载情况(排查是否由单线程引起的)

 mpstat -P ALL 1

 

以兆为单位查看内存的使用情况

free -m 

查看网络设备的吞吐率

sar -n DEV 1

 

 

二、windows

 

(1)任务管理器(cpu、内存、磁盘)

(2)perfmon资源管理器(cpu、内存、磁盘)

(3)Process Explorer (优秀的进程监控工具)

(4)pslist(命令行 进程监控工具)

 

 

三、jdk工具

 

性能相关命令总结(JAVA篇)_第7张图片

如:

C:\Program Files\Java\jdk1.8.0_112\lib>java -classpath tools.jar sun.tools.jps.Jps
18304
70496 Program
85624 jd-gui.exe
23500 Launcher
85596 Jps

 

(1)jps 输出java进程

性能相关命令总结(JAVA篇)_第8张图片

 

(2)jstat 查看java堆栈信息

使用方法如下:

性能相关命令总结(JAVA篇)_第9张图片

 

使用tool.jar

C:\Program Files\Java\jdk1.8.0_112\lib>java -classpath tools.jar sun.tools.jstat.Jstat

 

(3)jinfo

查看java 程序的扩展参数

性能相关命令总结(JAVA篇)_第10张图片

 

(4)jmap

生成java应用程序的堆快照和对象统计信息

性能相关命令总结(JAVA篇)_第11张图片

例如:

(5)jhap 

分析,jmap的heap.hprof

性能相关命令总结(JAVA篇)_第12张图片

 性能相关命令总结(JAVA篇)_第13张图片

 

OQL查询查询类性能相关命令总结(JAVA篇)_第14张图片

 

(6)jvisualvm

图形界面查看java堆,

性能相关命令总结(JAVA篇)_第15张图片

 

(7)jstack

打印线程堆栈

性能相关命令总结(JAVA篇)_第16张图片

 

(8)jstat

开启远程rmi服务,使远程使用jstack等命令

 

性能相关命令总结(JAVA篇)_第17张图片

 

(9)jhprof

查看各个函数所使用的cpu时间

性能相关命令总结(JAVA篇)_第18张图片

 

四、图形工具使用

 

(1)jconsole 可以对对java堆栈进行分析

(2)Visual VM 可以对java堆栈进行分析

(3)MAT 可以对内存泄漏进行检查(eclipse 免费)

(4)JProfile 一款商用的分析软件

你可能感兴趣的:(java,linux_shell,性能)