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

当我们对虚拟机内存分配与回收有了一个理论基础之后,我们就要从实践的角度去了解虚拟机内存管理的;

一.jdk的命令行工具

 1.1jps:虚拟机进程状态工具

jps命令行格式:

jps [option] [hostid]

具体使用:

各参数意义:

-q     只输出LVMID,省略主类的名称

-m    输出虚拟机进程启动时传递给主类main()的参数

-l     输出主类的全名,如果进程执行的是jar包,输出jar包路径

-v    输出虚拟机进程启动时jvm参数

创建并执行项目:

查看:

 

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

jstat命令格式:

jstat   [ option vmid [ interval [ s | ms ]  [count]] ]

说明一下参数interval 和count分别代表查询间隔和查询次数,如果没有设置,那就只查询一次;

实例:

 

 个参数意义:

-class    监视类装载/卸载数量/总空间以及类装载锁耗费的时间

-gc        监视java堆状况,包括Eden区/survivor区/老年代/永久代等容量/已用空间/gc时间合计等信息

-gccapacity  监视内容与-gc基本相同,但输出主要关注java堆各个区域使用到的最大,最小空间;

-gcutil     监视内容与-gc一样,但是输出主要关注已使用空间占总空间的百分比

-gccauser   与-gcutil功能一样,但是会额外输出导致上一次gc产生的原因

-gcnew    监控新生代gc状况

-gcnewcapacity  监控内容与-gcnew一样,输出主要关注使用到的最大/最小空间

-gcold    监控年老代gc状况

-gcoldcapacity  监控内容与-gcold一样,输出关注使用到的最大/最小空间

-gcpermcapacity  输出永久代使用到的最大/最小空间

-compiler   输出jit编译器编译过的方法/耗时等信息

-printcompilation 输出已经被jit编译的方法

1.3jinfo:java配置信息工具

命令格式;

jinfo    [ option ] pid

自行看help

1.4jmap:java内存映像工具

jmp(Memory map for java) 命令用于生产堆转储快照(dump文件).

命令格式:

jmap [ option ] vmid

自行看help

1.5jhat:虚拟机堆转储快照分析工具

命令格式:

jhat  [dump文件的路径]

1.6jstack:java 堆栈跟踪工具:

 

二.jdk的可视化工具 

2.1JConsole:java监视与管理控制台

想使用了解的请查看我另外一篇博客:

JVM虚拟机深入理解---Jconsole在jvm分析的使用

2.2VisualVM:多合一故障处理工具

该工具需要下载安装:

链接:https://visualvm.github.io/

使用方式和JConsole差不多;

其功能比JConsole更加强大,里面可以添加插件;具体使用方式请看官方文档;基本上工作上使用JConsole就差不多了.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值