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 : 進程id
- executable : 生成可執行的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
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/qq_16498553/article/details/120600396