四性能检测与故障处理工具

jps 虚拟机进程查询

jps [option] [hostid]

查询正在执行的虚拟机进程,显示虚拟机的执行主类以及本地虚拟机ID(LVMID),对于本地虚拟机进程来说,LVMID与PID是完全一致的.支持RMI协议

  • -q 只输出LVMID
  • -m 输出虚拟机启动时传递给MAIN函数的参数
  • -l 输出主类名称,如果是JAR包输出路径
  • -v 输出JVM参数

jstat 虚拟机统计信息监视工具

用于监视虚拟机各种运行状态 信息,可以显示本地或远程虚拟机中的类装载.内存.垃圾收集.JIT编译等运行数据.
jstat [option vmid [interval[s|ms] [count] ] ]
主要有三个参数 class gc compiler 其他参数还是查吧.参数太多了

jinfo 配置信息工具

可以实时的查看和修改虚拟机各项参数.但是对于Windows平台有一定的限制.

jmap 内存影响巩固

jmap用于生成堆转储快照 heapdump ,但是他不仅仅是这个作用,还可以查询finalize执行队列,堆和永久代详细信息,如空间使用率,当前使用的收集器.

jhat 虚拟机转储快照分析工具

用来分析dump的工具,不过一般不会用这个.有更好的选择.这里涉及到一个OQL的东西,可以对内存中的对象进行统计.

jstack 堆栈跟踪工具

用于生成虚拟机当前时间的线程快照threadDump
主要目的是定位线程出现长时间停顿的原因,如线程间死锁,死循环,请求外部资源导致的长时间等待等都是导致线程长时间停顿的常见原因.线程出现停顿的时候通过jstack来查看各个线程的调用堆栈,就可以知道没有响应的线程在后台做些什么事情,或等待什么资源

jstack [option] vmid

  • -F 当正常输出的请求不被响应时,强制输出线程堆栈.
  • -l 除堆栈外,显示关于锁的附加信息.

JConsole 监视与管理控制台

是一种图形化工具

jvisialVM

图形化工具,功能上类似于把上面所有的东西打包在一起了.
位于jdk/bin/jvisualvm.exe

你可能感兴趣的:(四性能检测与故障处理工具)