java性能监视

JAVA 2015-12-12

我们在编程中难免要对java程序进行分析改进,为此,可以利用jdk自带的工具和命令进行分析: 1.jps

  • 列出java进程,类似于ps命令
  • 参数-q可以指定jps只输出进程ID ,不输出类的短名称
  • 参数-m可以用于输出传递给Java进程(主函数)的参数
  • 参数-l可以用于输出主函数的完整路径
  • 参数-v可以显示传递给JVM的参数

2.jinfo

  • 可以用来查看正在运行的Java应用程序的扩展参数,甚至支持在运行时,修改部分参数
  • -flag :打印指定JVM的参数值
  • -flag [+|-]:设置指定JVM参数的布尔值
  • -flag =:设置指定JVM参数的值

3.jmap

  • 生成Java应用程序的堆快照和对象的统计信息
  • 例如:jmap -histo 2972 >c:\s.txt,将信息保存在c盘s.txt文件

  • Dump堆
  • 例如:jmap -dump:format=b,file=c:\heap.hprof 2972

4.jstack

  • 打印线程dump
  • -l 打印锁信息
  • -m 打印java和native的帧信息
  • -F 强制dump,当jstack没有响应时使用
  • 例如:jstack 120 >>C:\a.txt

5.JConsole

  • 图形化监控工具
  • 可以查看Java应用程序的运行概况,监控堆信息、永久区使用情况、类加载情况等 1.png

6.Visual VM

  • Visual VM是一个功能强大的多合一故障诊断和性能监控的可视化工具
  • 打开方式:双击击jdk,bin文件夹中的jvisualvm.exe 文件 2.png

总结:jdk自带的工具和命令多在bin目录下,只要善加利用,就可以有效解决编程问题。


本文由 Tony 创作,采用 知识共享署名 3.0,可自由转载、引用,但需署名作者且注明文章出处。

赏个馒头吧