文章目录

Java虚拟机性能监控与故障处理工具,前面的文章介绍了性能监控的一些工具,这篇文章详细讲解一下jVirtualVM这个工具

打开jdk/bin目录下jvirtualvm.exe
在这里插入图片描述
会打开如下界面,在本地会出现本地运行的jvm,
在这里插入图片描述
打开工具->插件,安装 Virsual GC,
在这里插入图片描述
然后打开一个jvm应用,会看到系统默认参数,以及监视中的一些CPU信息,堆信息,类信息,和线程信息,
在这里插入图片描述
选中Virtual GC信息:
由于我这里设置了Xms4000m,所以在初始值伊甸区是1000M,加上s0和S1 一共1.3G,和老年区是1:2的关系,观察时间久一点还可以发现S0和S1是会交替为空的,说明了这两块是复制算法的,打开右上角的Histogram可以看到当对象年龄进入到15之后然后经过一次minorGC老年区的使用就会变大,也说明了默认分代年龄大于15会放到老年区。
在这里插入图片描述
监控远程JVM:
修改配置

vi $JAVA_HOME/jre/lib/security/java.policy

添加
permission java.security.AllPermission;
在这里插入图片描述
启动jstatd:
cd $JAVA_HOME/bin

./jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname=192.168.1.1(服务端ip) &

然后先添加远程主机,然后再添加jstatd连接,点击确认既可以了:
在这里插入图片描述
可以看到我远程的一个jvm应用:
这边就可以看到Xms是Xmx的1/16了,因为Xms默认是内存的1/64,而Xmx默认是内存的1/4。
在这里插入图片描述
还有更多功能等待去挖掘
以上。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐