java虚拟机性能分析和故障解决工具

一:工具概述

二:命令行工具

     jps(jvm process status tool):显示指定系统内所有虚拟机的进程。

     jstat(jvm statices monitoring tools):用于收集虚拟机各方面的运行数据。

     jinfo(configuration info for java):显示虚拟机配置信息。

     jmap(memory map for  java):生成虚拟机的内存转储快照(heapdump文件)

     jhat(jvm heap dump drowser):用于分析heapdump文件,它会建立一个http/html服务器,让用户可以在浏览器上查看分析结果。

     jstack(stack trace for java ) :显示虚拟机的线程快照。

2.1 jps (jvm process status tool)

作用:列出正在运行的虚拟机进程,并显示虚拟机执行主类(Main class,main函数所在的类)名称以及这些进程的本地虚拟机唯一的id。

虽然功能比较单一,但它频率最高的jdk 命令行工具,因为其他的jdk 工具大多需要输入它查询的唯一ID来确定要监控哪一个虚拟机进程。对于本地虚拟机进程来说,唯一ID,与操作系统进程ID是一致的。使用windows或unix命令也可以查询到虚拟机的进程的唯一ID,但如果同时启动多个虚拟机进程,根据进程名称定位,那只能依赖jps命令显示主类的功能才能区分。

命令格式:

jsp [opetion] hostid

第一个参数options 

-q显示进程ID

-m显示进程ID,主类名称,以及传入main方法的参数

-l显示进程ID,主类全名

-v 显示进程ID,主类名称,以及传入的jvm的参数

-V显示进程,主类名称

其中 -mlvV可以任意组合使用。

2.2  jstat 

作用:监视虚拟机各种运行状态信息,可以显示本地或者是远程虚拟机进程中的类装载,内存,垃圾收集,IT编译等运行数据。

参数解释:

第一个参数:options

代表用户希望查询的虚拟机信息,主要分类为3类,垃圾收集和运行期编译状况,具体选项及作用如下:

-class:显示有关类加载行为的统计信息。

-complier:显示有关java hotspot vm即时编译器行为的统计信息。

-gc:显示有关垃圾收集堆行为的统计信息

-gccapacity:显示有关各个垃圾加收代容量及其空间的统计信息。

-gccause:显示有关垃圾收集统计信息(同 -gcutil) 以及上一次和当前(如果适用)垃圾收集事件的原因。

-gcnew 显示新生代行为的统计信息

-gcnewcapactiy:显示有关新生代及其相关空间的统计信息。

-gcoldcapactiy:显示有关老年代大小的统计信息

-gcmetacatpcaity:显示有关元空间大小的统计信息

-gcutil:显示有关垃圾收集信息

-printcompilcation:显示java 编译方法的统计信息。

第二个参数

 

三:可视化工具

     jconsole 

     visualvm 

四、内存分析和线程分析

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值