JVM调优专题-JVM调试工具

目录

JVM图形化监控和调优工具

JConsole

JvisualVm

Jvmstat

YourKit

JVM命令行监控工具

jps(JVM Process Status Tool)

jstack

jmap(Memory Map)和jhat(Java Heap Analysis Tool)

jstat(JVM统计监测工具)


 

当系统遇到一些问题或者异常的时候,我们往往会查看系统日志、JVM堆栈、GC日志,或者查看线程快照、堆转储快照等信息,然后进行一个客观的分析,最后找到问题。而查看这些最常用的就是JVM自带的监控分析工具。

JVM图形化监控和调优工具

JConsole

JConsole 是一个基于JMX 的图形监控工具,用于连接正在运行的JVM,可以以图表化的形式显示各种数据,并可通过远程连接监视远程的服务器VM 情况,此类工具可以较直观观察各种变化,但比较耗费资源。

在JDK 1.5之后JConsole 已经成为JDK 自带监控工具,只需要在命令行状态下输入jconsole,就可以开启监控界面

jconsole

 

可以选择远程监控或者本地监控

 

从jconsole 中可以不光光监控到内存情况,还可以监控例如:线程,类,JVM参数等等高级信息。jconsole 还可以根据内存等使用情况手动执行GC 清理,这给我们的程序监控与良好运行带来了很大的便利。值得注意的是jconsole可以同时监控多个JVM 进程,在jconsole 中可以轻松的切换监控界面。

  • 概述选项(Overview):监控JVM和一些监控变量的信息。
  • 内存选项(Memory):内存使用信息
  • 线程选项(Threads):线程使用信息
  • 类选项(Classes):类调用信息
  • VM摘要(VM Summary):JVM的信息
  • MBean选项(MBeans):所有MBean 的信息MBean 展示了所有以一般形式注册到JVM 上的MBean 。MBean 允许你获取所有的平台信息,包括那些不能从其他标签页获取到的信息。注意,其他标签页上的一些信息也在MBean 这里显示。另外,你可以使用 MBean 标签管理你自己的应用的MBean。

JvisualVm

JDK1.6 中Java 引入了一个新的可视化的JVM 监控工具:Java VisualVM。 运行VisualVM 非常简单,只需在命令行状态下输入:

jvisualvm

 

“本地”列表下列出在本机运行的Java 程序的资源占用情况,如果本地有Java程序在运行的话启动VisualVM 即可看到相应的程序名,点击程序名打开相应的资源监控菜单,以图形的形式列出程序所占用的CPU、Heap、PermGen、类、线程的 统计信息

Jvmstat

图形版的jvmstat需要去官网下载安装包,使用jvmstat 之前需要配置相应环境变量,环境变量配置如下:

JVMSTAT_HOME:jvmstat安装目录 

JVMSTAT_JAVA_HOME:JDK所在目录,与JAVA_HOME值相同 

配置好两个环境变量之后就可以运行jvmstat 了,运行命令为:

visualgc pid

 

https://i-blog.csdnimg.cn/blog_migrate/a650323759bd79ed3b60d8b5713d8c46.png

从jvmstat 中可以清晰的观察到汇编,加载,垃圾回收消耗的时间与各区域内存使用情况,在图中s0与s1的内存使用永远都是相斥的,即至多只有一个会在使用。所以jvmstat 只能作为一款基本的图形监控工具。

jvmstat 作为一款基本的JVM 图形化监控工具,优点就是简单易用,我们可以非常直观的观察堆内存的使用情况,当然

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值