JVM监控及诊断工具

您所在的位置:网站首页 linux实时查看进度的命令有哪些 JVM监控及诊断工具

JVM监控及诊断工具

2023-04-09 20:32| 来源: 网络整理| 查看: 265

概述基本语法演示扩展演示

学习 尚硅谷 宋红康 JVM从入门到精通 的学习笔记

概述

jinfo全拼是 Configuration Info for Java 作用是查看虚拟机配置参数信息,也可以用于调整虚拟机的配置参数。在很多情况下,Java应用程序不会指定所有的Java虚拟机参数,毕竟虚拟机参数太多了,开发人员可能不知道某个Java虚拟机的参数设置的默认值到底是多少,比如说我想看一下默认的新生代老年代比例分配是多少等等。这个时候如果开发人员去查找开发文档的话,可能就比较麻烦了,但是使用jinfo工具,开发人员就能很快的查看到某个虚拟机配置的参数。

基本语法

查看 jinfo -sysprops 进程id 可以查看由System.getProperties()取得的参数 jinfo -flags 进程id 查看曾经赋过值的一些参数 jinfo -flag 参数名称 进程id 查看某个java进程的具体参数信息

修改 针对boolean类型 jinfo -flag [+|-]参数名称 进程id 针对非boolean类型 jinfo -flag 参数名称=参数值 进程id

演示

设置完以后启动上面的main方法。下面使用命令查看一下。用 jps -v可以看到我们自己设置的参数,但是如果我们想知道我们没有设置的参数是多少,我们使用jps -v就不太行了.

使用 jinfo -sysprops 2540就能查看一些信息。

查询赋过值的信息

查看具体赋值过的信息,查询是否使用并行垃圾回收器呢。 “+” 代表使用了

查询是否使用了串行的垃圾回收器, “- ”代表没有使用

查看最大堆空间大小

修改参数可以立即生效,但是不是所有的值都可以动态的去修改,只有被标记为manageable的flag可以被实时的修改,

下面命令是查看PrintGCDetails的值,结果是 “-”代表没有修改过

第一行命令 PrintGCDetails 前面添加 “+” , 再去执行第二行的命令,查看,就发现之前是”-“,现在变成了”+”,说明参数被修改了.

下面也是动态的修改,修改后再查看,发现修改成功了.

注意,动态修改的值仅仅临时有效,当你这个进程关闭之后,这个动态修改的参数就失效了,你下次再启动Java程序的时候,又回来原来的值了.

扩展

拓展 java -XX:+PrintFlagsInitial 查看所有JVM参数启动的初始值 java -XX:+PrintFlagsFinal 查看所有JVM参数的最终值 值前面添加冒号:的是修改之后的值,没有添加的都是没有发生改变的初始值

java -参数名称:+PrintCommandLineFlags 查看那些已经被用户或者JVM设置过的详细的XX参数的名称和值

演示

将结果输出到 1.txt 里面.



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3