Java性能优化之JVM性能监控(三)
Java虚拟机性能监控与故障处理工具,前面的文章介绍了性能监控的一些工具,这篇文章详细讲解一下jVirtualVM这个工具打开jdk/bin目录下jvirtualvm.exe会打开如下界面,在本地会出现本地运行的jvm,打开工具->插件,安装 Virsual GC,然后打开一个jvm应用,会看到系统默认参数,以及监视中的一些CPU信息,堆信息,类信息,和线程信息,选中Virtual GC信息
文章目录
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。
还有更多功能等待去挖掘
以上。
更多推荐
所有评论(0)