jvm(六)

jvm

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

概述

给一个系统定位问题的时候,知识、经验是关键基础,数据是依据,工具是运用知识处理数据的手段。数据包括:运行日志、异常堆栈,堆转储快照。

jdk的命令行工具
  • jdk/bin目录下存在诸如“java.exe”等各种小巧的命令行工具
  • 这些工具都非常稳定而且功能强大,能在处理应用程序性能问题、定位故障时发挥很大作用
  • 这些命令行工具大多数是jdk/lib/tools.jar类库的一层薄包装,主要功能代码是在tools类库中实现的
  • 借助tools.jar类库里面的接口,我们可以直接在应用程序中实现功能强大的监控分析功能
  • 若读者在工作中需要监控运行于jdk1.5的虚拟机之上的程序,在程序启动时添加参数“-Dcom.sun.management.jmxremote”开启JMX管理功能。
  • sun jdk监控和故障处理工具
jps -- jvm process status tool显示指定系统内所有的Hotspot虚拟机进程
jstat -- jvm statistics mointoring tool收集Hotspot虚拟机各方面的运行数据
jinfo -- configuration info for java显示虚拟机配置信息
jmap -- memory map for java生成虚拟机的内存转储快照
jhat -- jvm heap dump browser用于分析heapdump文件,它会建立一个http/html服务器,让用户可以在浏览器上查看分析结果
jstack -- 虚拟机的线程快照
jps:虚拟机进程状况工具
  • 功能:可以列出正在运行的虚拟机进程,并显示虚拟机执行主类名称以及这些进程的本地虚拟机唯一ID
  • jps命令格式:
jps [options] [hostid]
  • jps可以通过RMI协议查询开启了RMI服务的远程虚拟机进程状态,hostid为RMI注册表中注册的主机名。
    在这里插入图片描述
jstat:虚拟机统计信息监视工具
  • jstat是用于监视虚拟机各种运行状态信息的命令行工具。
  • 可显示本地或者远程虚拟机进程中的类装载、内存、垃圾收集、jit编译等运行数据
  • jstat命令格式:
    jstat [option vmid [interval][s|ms] [count]]
    在这里插入图片描述
选项option代表着用户希望查询的虚拟机信息,主要分为三类:类装载、垃圾收集、运行期编译状况
  • 使用jstat工具在纯文本状态下监视虚拟机状态的变化
jinfo:java配置信息工具
  • jinfo的作用是实时地查看和调整虚拟机各项参数。使用jps命令的-v参数可以查看虚拟机启动时显示指定的参数列表,但如果想知道未被显式指定的参数的系统默认值,可以使用jinfo的-flag选项进行查询了
  • jinfo命令格式:
    jinfo [option] pid
jmap:java内存映像工具
  • jmap命令用于生成堆转存储快照
  • jmap的作用不仅仅是为了获取dump文件,还可以查询finalize执行队列、Java堆和永久代的详细信息
  • jmap命令格式:
    jmap [option] vmid
    在这里插入图片描述
jhat:虚拟机堆转存储快照分析工具
  • sunjdk提供jhat命令与jmap搭配使用,来分析jmap生成的堆转储快照。
  • jhat内置了一个微型的http/HTML服务器,生成dump文件的分析结果后,可以在浏览器中查看
jstack:java堆栈跟踪工具
  • 用于生成虚拟机当前时刻的线程快照
线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的集合,生成线程快照的主要目的是定位线程出现长时间停顿的原因
  • 线程出现停顿的时候通过jstack来查看各个线程的调用栈
  • jstack命令格式:
    jstack [option] vmid
    在这里插入图片描述
HSDIS:JIT生成代码反汇编
  • sun官方推荐的Hotspot虚拟机JIT编译代码的反汇编插件,它包含在Hotspot虚拟机的源码之中,但没有提供编译后的程序。

JDK的可视化工具

  • JConsole和VisualVM,这两个工具是JDK的正式成员
JConsole:Java监视与管理控制台
  • JConsole是一种基于JMX的可视化监视、管理工具,它的管理部分的功能是针对JMXMBean进行管理,由于MBean可以使用代码、中间件服务器的管理控制台或者所有符合JMX规范的软件进行访问
  • 通过jdk/bin下的jcosole.exe启动,将自动搜索本机运行的所有虚拟机进程
VisualVM:多合一故障处理工具

目前功能最强大的运行监视和故障处理程序

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值