常用jdk工具(命令行)

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

 

jstar(jvm statistics monitoring tool):收集虚拟机各方面的运行数据;

  • jstar[ options vmid[ interval [count]]] <pid>

  • 第一个参数 options :

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

  • 第二个参数 vmid

  • 如果是本地虚拟机进程,vmid与本地虚拟机唯一id是一致的,

  • 如果是远程虚拟机进程,那么格式是protocol:lvmid[@hostname[:port]/servername]

  • 第三个参数:interval

  • 采样间隔,单位为秒或者毫秒;

  • 第四个参数:count

  • 要显示的样本数;

  • 使用:jstar -gc xxxx 250 10(xxxx进程,250毫秒 采集10次,不指定默认打印一次)

  • -gcutil 内存占比

 

jinfo(configuration info forjava):显示虚拟机配置信息;

  • jinfo[options] <pid>;

  • -flag name:输出对应名称的参数;

  • -flag [+|-]name:动态开启或者关闭对应名称的参数;

  • -flag name=value:动态设定对应名称的参数;

  • -flags: 输出全部的参数;

  • -sysprops:输出系统属性;

jmap(memory map for java):可以生成java程序的dump文件,也可以查看堆内存对象信息、查看classloader的信息

以及finalizer队列;

  • jmap[options]<pid>

  • no option:查看进程的内存映像信息;

  • heap:显示java堆详细信息;

  • histo[:live]:显示堆中对象的统计信息;

  • clstats:打印类加载器信息;

  • finalizerinfo:显示在F-Queue队列等待Finalizer队列执行finalizer方法的对象;

  • dump:<dump-options>:生成堆转储快照;

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

  • 太过于简陋,用的不多,被其他代替;

jstack(stack trace forjava):查看或者导出java应用中线程堆栈信息;

  • jstack[options]<pid>

  • -F:当前线程挂起时,使用 jstack -l pid请求不被相应时,强制输出线程堆栈;

  • -l:除堆栈外,显示关于锁的附加信息;

  • -m:可以同事输出java以及c/c++堆栈信息;

 

JConsole:查看java应用程序运行概况,监视垃圾回收器管理的虚拟机内存的变化趋势,以及监控程序内的线程。

 

visual VM

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值