JDK自带的JVM监控和性能分析工具

1,206 阅读1分钟

引言:更多相关请看 JVM+GC解析系列
面试问题:对于JDK自带的JVM监控和性能分析工具用过哪些?一般你是怎么用的?

概述

现实企业级Java应用开发、维护中,有时候我们会碰到下面这些问题:

OutOfMemoryError,内存不足
内存泄露
线程死锁
锁争用(Lock Contention)
Java进程消耗CPU过高
……

这些问题在日常开发、维护中可能被很多人忽视(比如有的人遇到上面的问题只是重启服务器或者调大内存,而不会深究问题根源),但能够理解并解决这些问题是Java程序员进阶的必备要求。本文将对一些常用的JVM性能调优监控工具进行介绍,希望能起抛砖引玉之用。可以打开java安装目录/bin进行查看

或点击Java8工具大全或复制下面链接进行查看。

https://docs.oracle.com/javase/8/docs/technotes/tools/

重点:

监视工具Monitoring Tools (jps, jstat, jstatd) 
故障排除工具Troubleshooting Tools (jinfo, jhat, jmap, jsadebugd, jstack) 

重点性能监控工具

jps(虚拟机进程状况工具)
jinfo(Java配置信息工具)
jmap(内存映像工具)
jstat(统计信息监控工具)