一、linux 部分
top
该命令可以简要的查看系统的cup、内存使用情况
sar
可以周期性的对内存和cpu进行采样

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

例如
vmstat 1 3

iostat
提供详细的I/O信息

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


jstack 打印所有线程信息

查看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工具


如:
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进程

(2)jstat 查看java堆栈信息
使用方法如下:

使用tool.jar
C:\Program Files\Java\jdk1.8.0_112\lib>java -classpath tools.jar sun.tools.jstat.Jstat
(3)jinfo
查看java 程序的扩展参数

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

例如:

(5)jhap
分析,jmap的heap.hprof


OQL查询查询类
(6)jvisualvm
图形界面查看java堆,

(7)jstack
打印线程堆栈

(8)jstat
开启远程rmi服务,使远程使用jstack等命令

(9)jhprof
查看各个函数所使用的cpu时间

四、图形工具使用
(1)jconsole 可以对对java堆栈进行分析
(2)Visual VM 可以对java堆栈进行分析
(3)MAT 可以对内存泄漏进行检查(eclipse 免费)
(4)JProfile 一款商用的分析软件

博客介绍了不同系统和环境下的监控工具。Linux部分有top、sar等命令,可监控CPU、内存、I/O等;Windows有任务管理器、perfmon等工具;JDK工具如jps、jstat等可用于监控Java进程和堆栈;还介绍了jconsole、Visual VM等图形工具的使用。
&spm=1001.2101.3001.5002&articleId=82047701&d=1&t=3&u=956fc8af706543b7ace6f84b3fdc1378)
808

被折叠的 条评论
为什么被折叠?



