JVM-虚拟机性能监控与故障处理工具

       注意:如果读者在工作中需要监控运行于JDK1.5的虚拟机之上的程序,在程序启动时请添加参数“-Dcom .sun .management .jmxremote”开启JMX管理功能,否则由于部分工具都是基于JMX(包括4.3节介绍的可视化工具),它们都将会无法使用,如果被监控程序运行于JDK1.6的虚拟机之上,那JMX管理默认是开启的,虚拟机启动时无须再添加任何参数。

jps:虚拟机进程状况工具

       列出正在运行的虚拟机进程,并显示虚拟机执行主类(MainClass,main()函数所在的类)名称以及这些进程的本地虚拟机唯一ID

       jsp命令格式:jps[options][hostid]

      C:\Users\hy>jps -l
        108660 C:\Users\hy\AppData\Local\Temp\pul7D78.tmp\PULSEI~1.JAR
        181688 sun.tools.jps.Jps

214614_ySsR_3088173.png

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

       用于监视虚拟机各种运行状态信息的命令行工具。它可以显示本地或者远程虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据

       jstat命令格式为:jstat[option vmid[interval[s|ms][count]]]对于命令格式中的VMID与LVMID需要特别说明一下:如果是本地虚拟机进程,VMID与LVMID是一致的,如果是远程虚拟机进程,那VMID的格式应当是:[protocol:][//]lvmid[@hostname[:port]/servername]

       参数interval和count代表查询间隔和次数,如果省略这两个参数,说明只查询一次。假设需要每250毫秒查询一次进程2764垃圾收集状况,一共查询20次,那命令应当是:jstat-gc 2764 250 20

215553_oVO0_3088173.png

jinfo:Java配置信息工具

      jinfo(Configuration Info for Java)的作用是实时地查看和调整虚拟机各项参数。使用jps命令的-v参数可以查看虚拟机启动时显式指定的参数列表,但如果想知道未被显式指定的参数的系统默认值,除了去找资料外,就只能使用jinfo的-flag 选项进行查询了(如果只限于JDK1.6或以上版本的话,使用java-XX:+PrintFlagsFin al查看参数默认值也是一个很好的选择),jinfo还可以使用-sysprops选项把虚拟机进程的System .getProperties()的内容打印出来。这个命令在JDK  1.5时期已经随着Linux 版的JDK发布,当时只提供了信息查询的功能,JDK1.6之后,jinfo在Windows和Linux 平台都有提供,并且加入了运行期修改参数的力,可以使用-flag[+|-]name或者-flag name=value修改一部分运行期可写的虚拟机参数值。JDK 1.6中,jinfo对于Windows平台功能仍然有较大限制,只提供了最基本的-flag 选项。

       jinfo命令格式:jinfo[option]pid

jmap:Java内存映像工具

转载于:https://my.oschina.net/u/3088173/blog/1512393

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值