基于JVM-jinfo的使用方式
jinfo是什么,可以干什么?
jinfo全称Configuration Info for Java作用是实时查看和调整虚拟机各项参数。
使用jps命令的-v参数可以查看虚拟机启动时显式指定的参数列表。
注意先 jps -l 查出进程id
相关命令查询
查看所有参数
jinfo 20220

查询CMS的配置
jinfo -flag CMSInitiatingOccupancyFraction 20220

查看jvm的参数
jinfo -flags 20220

查看java系统参数
jinfo -sysprops 20220

查看是否打开GC及详情
jinfo -flag PrintGC 20220

jinfo -flag PrintGCDetails 20220

打开gc打印
jinfo -flag +PrintGC 20220

再次查看

最后
jinfo在排查jvm问题和日常查看jvm配置的时候常用,所以用好该命令可以有助日后对jvm排查的掌握。
并且jinfo可以动态的来配置jvm的参数,这样极大方便虚拟机的实时调试,不需要再重新启动的时候配置,并且也可以快速进行验证,非常方便实用。
JVM Troubleshooting命令-jinfo
概述
用来查看正在运行的Java应用程序的扩展参数,支持在运行时,修改部分参数。
命令格式
jinfo [ option ] pid
jinfo [ option ] executable core
jinfo [ option ] [ servier-id ] remote-hostname-or-IP
option: 命令行功能选项pid: 进程idexecutable: 生成可执行的core dump文件core: 要打印配置信息的核心文件remote-hostname-or-IP: 远程调试服务器主机名或IP地址servier-id: 在同一个远程主机上运行多个调试服务器时使用的可选唯一ID
查看最大内存: jinfo -flag MaxHeapSize pid
查看垃圾回收器 : jinfo -flag UseParallelGC pid
功能选项
无参数: 以key=value的方式输出全部的参数和系统属性-flag参数名 : 输出指定的参数的值
如jinfo -flag PrintGC 8520显示PrintGC参数状态

-flag [+|-]参数名 : 启用或禁用指定参数的功能(参数必须是布尔型的)
如jinfo -flag -PrintGC 8520关闭PrintGC功能
如jinfo -flag +PrintGC 8520打开PrintGC功能

-flag name=value: 设置参数name值为value-flags: 输出传递给JVM的参数

-sysprops: 以key-value的方式打印java系统属性

-h: 打印帮助信息-help: 打印帮助信息
不是所有参数都可以修改的, 哪些参数可以修改的,可以使用下面命令查询:
java -XX:+PrintFlagsFinal -version | grep manageable
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
基于Spring Boot应用ApplicationEvent案例场景
这篇文章主要介绍了基于Spring Boot应用ApplicationEvent,利用Spring的机制发布ApplicationEvent和监听ApplicationEvent,需要的朋友可以参考下2023-03-03
Java String字符串和Unicode字符相互转换代码
这篇文章主要介绍了Java String字符串和Unicode字符相互转换代码,需要的朋友可以参考下2014-10-10
MyBatis插入Insert、InsertSelective的区别及使用心得
这篇文章主要介绍了MyBatis插入Insert、InsertSelective的区别及使用心得,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-12-12
Java结构型设计模式之组合模式Composite Pattern详解
组合模式,又叫部分整体模式,它创建了对象组的数据结构组合模式使得用户对单个对象和组合对象的访问具有一致性。本文将通过示例为大家详细介绍一下组合模式,需要的可以参考一下2022-11-11
BeanPostProcessor在显示调用初始化方法前修改bean详解
这篇文章主要介绍了BeanPostProcessor在显示调用初始化方法前修改bean详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2022-12-12


最新评论