【jvm】jinfo使用

这篇具有很好参考价值的文章主要介绍了【jvm】jinfo使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

jinfo介绍

jinfo 是一个命令行工具,用于查看和修改 Java 虚拟机(JVM)的配置参数。它通常用于调试和性能调优。

使用 jinfo 命令,你可以查看当前 JVM 的配置参数,包括堆大小、线程数、垃圾回收器类型等。此外,你还可以使用 jinfo 命令来修改 JVM 的配置参数,例如增加堆大小、更改垃圾回收器类型等。

 jinfo 命令通常与 jps 和 jstack 等其他 JVM 调试工具一起使用,以帮助你更好地理解和优化 Java 应用程序的性能。

语法

jinfo [option] pid

参数介绍

输入命令:jinfo -h

【jvm】jinfo使用,JVM,jvm

  • -flag name:查询某个标志(Flag)是否启用或其值。
  • -flag [+|-]name:启用或禁用某个标志(仅限支持动态更改的标志)。
  • -flags:显示所有标志及其值。
  • -sysprops:显示Java系统属性。

常用命令

jinfo  <pid>

【jvm】jinfo使用,JVM,jvm

查询某个标志(Flag)是否启用或其值
jinfo -flag <FlagName> <pid>
示例:

查询Java进程(pid为7813)是否启用了UseConcMarkSweepGC垃圾收集器:

jinfo -flag UseConcMarkSweepGC 7813

【jvm】jinfo使用,JVM,jvm

动态修改支持的标志

如果该标志支持运行时修改的话

jinfo -flag [+|-]<FlagName> <pid>
示例1:

启用Java进程(pid为7813)的PrintGCDetails选项以输出详细的GC日志:

jinfo -flag +PrintGCDetails 7813

【jvm】jinfo使用,JVM,jvm

示例2:

禁用Java进程(pid为7813)的PrintGCDetails选项以输出详细的GC日志:

jinfo -flag -PrintGCDetails 7813

【jvm】jinfo使用,JVM,jvm

 显示所有标志及其值
jinfo -flags  <pid>

【jvm】jinfo使用,JVM,jvm

  显示Java系统属性
jinfo -sysprops  <pid>

【jvm】jinfo使用,JVM,jvm


附件:jinfo返回信息

Attaching to process ID 4200, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.321-b07
Java System Properties:

java.vendor = Oracle Corporation
spring.sleuth.sampler.percentage = 1.0
sun.java.launcher = SUN_STANDARD
service.version = 2.5.0.RELEASE
sun.management.compiler = HotSpot 64-Bit Tiered Compilers
sun.nio.ch.bugLevel = 
os.name = Linux
sun.boot.class.path = /usr/local/java/jdk1.8.0_321/jre/lib/resources.jar:/usr/local/java/jdk1.8.0_321/jre/lib/rt.jar:/usr/local/java/jdk1.8.0_321/jre/lib/sunrsasign.jar:/usr/local/java/jdk1.8.0_321/jre/lib/jsse.jar:/usr/local/java/jdk1.8.0_321/jre/lib/jce.jar:/usr/local/java/jdk1.8.0_321/jre/lib/charsets.jar:/usr/local/java/jdk1.8.0_321/jre/lib/jfr.jar:/usr/local/java/jdk1.8.0_321/jre/classes
yang.env = test2
java.vm.specification.vendor = Oracle Corporation
java.runtime.version = 1.8.0_321-b07
user.name = root
yang.dev-mode = true
user.language = zh
sun.boot.library.path = /usr/local/java/jdk1.8.0_321/jre/lib/amd64
info.version = 2.5.0.RELEASE
nacos.logging.path = /root/logs/nacos
info.desc = data-screen
PID = 4200
java.version = 1.8.0_321
user.timezone = Asia/Shanghai
spring.cloud.nacos.config.file-extension = yaml
sun.arch.data.model = 64
java.endorsed.dirs = /usr/local/java/jdk1.8.0_321/jre/lib/endorsed
sun.cpu.isalist = 
sun.jnu.encoding = UTF-8
file.encoding.pkg = sun.io
file.separator = /
java.specification.name = Java Platform API Specification
java.class.version = 52.0
csp.sentinel.api.port = 8719
user.country = CN
java.home = /usr/local/java/jdk1.8.0_321/jre
spring.cloud.nacos.discovery.server-addr = nacos.jl.com:8848
spring.cloud.alibaba.seata.tx-service-group = data-screen-group
java.vm.info = mixed mode
os.version = 3.10.0-1160.el7.x86_64
path.separator = :
java.vm.version = 25.321-b07
http.maxRedirects = 5
java.protocol.handler.pkgs = org.springframework.boot.loader
spring.cloud.nacos.config.server-addr = nacos.yang.com:8848
java.awt.printerjob = sun.print.PSPrinterJob
spring.cloud.nacos.discovery.namespace = 
sun.io.unicode.encoding = UnicodeLittle
awt.toolkit = sun.awt.X11.XToolkit
user.home = /root
yang.name = data-screen
java.specification.vendor = Oracle Corporation
java.library.path = /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
java.vendor.url = http://java.oracle.com/
spring.beaninfo.ignore = true
logging.config = classpath:log/logback-test2.xml
java.vm.vendor = Oracle Corporation
java.runtime.name = Java(TM) SE Runtime Environment
sun.java.command = data-screen.jar --spring.profiles.active=test2
java.class.path = data-screen.jar
project.name = data-screen
yang.is-local = false
java.vm.specification.name = Java Virtual Machine Specification
spring.cloud.nacos.config.shared-dataids = yang.yaml,test2.yaml
java.vm.specification.version = 1.8
sun.cpu.endian = little
sun.os.patch.level = unknown
java.awt.headless = true
java.io.tmpdir = /tmp
java.vendor.url.bug = http://bugreport.sun.com/bugreport/
spring.main.allow-bean-definition-overriding = true
os.arch = amd64
java.awt.graphicsenv = sun.awt.X11GraphicsEnvironment
java.ext.dirs = /usr/local/java/jdk1.8.0_321/jre/lib/ext:/usr/java/packages/lib/ext
@appId = data-screen
user.dir = /workspace/java/screen
spring.application.name = data-screen
spring.profiles.active = test2
line.separator = 

java.vm.name = Java HotSpot(TM) 64-Bit Server VM
file.encoding = UTF-8
csp.sentinel.charset = UTF-8
csp.sentinel.flow.cold.factor = 3
java.specification.version = 1.8

VM Flags:
Non-default VM flags: -XX:CICompilerCount=3 -XX:InitialHeapSize=130023424 -XX:MaxHeapSize=2051014656 -XX:MaxNewSize=683671552 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=42991616 -XX:OldSize=87031808 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseFastUnorderedTimeStamps -XX:+UseParallelGC 
Command line: 



【jvm】jinfo使用,JVM,jvm文章来源地址https://www.toymoban.com/news/detail-842317.html

到了这里,关于【jvm】jinfo使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • jvm-日志分析工具gcviewer的使用

    gcviewer是什么?     GCViewer是一个小工具,可以可视化Sun / Oracle、IBM、HP和BEA Java虚拟机生成的详细GC输出。它是在GNU LGPL下发布的自由软件。---官网翻译 gcviewer的使用 文章使用的配置 工具 环境或版本 idea 2021 系统 ios(mac) jdk 1.8 官网:https://github.com/chewiebug/GCViewer 下载:http

    2024年02月04日
    浏览(40)
  • 【JVM 监控工具】性能诊断--JProfiler的使用

    性能诊断是软件工程师在日常工作中需要经常面对和解决的问题,在用户体验至上的今天,解决好应用的性能问题能带来非常大的收益。Java 作为最流行的编程语言之一,其应用性能诊断一直受到业界广泛关注。可能造成 Java 应用出现性能问题的因素非常多,例如线程控制、

    2024年02月08日
    浏览(59)
  • actuator/prometheus使用pushgateway上传jvm监控数据

             prometheus已经部署pushgateway服务,访问{pushgateway.server:9091}可以看到面板 基于springboot引入支持组件,版本可以 开启配置          在pushgateway面板中会显示新增的服务,在prometheus中也可能看到采集的数据

    2024年02月12日
    浏览(37)
  • 【JVM篇】ThreadLocal中为什么要使用弱引用

    ThreadLocal可以在线程中存放线程的本地变量,保证数据的线程安全 ThreadLocal是这样子保存对象的: 在每个线程中,存放了一个ThreadLocalMap对象,本质上就是一个数组实现的哈希表,里面存放多个Entry对象 每个Entry对象继承自弱引用,内部存放ThreadLocal对象,同时用强引用,引用

    2024年02月20日
    浏览(54)
  • 深入理解JVM:Java使用new创建对象的流程

            ①new 对象         ②反射         ③对象的复制         ④反序列化 先看看常量池里面有没有,如果有,就用常量池的 看这个类有没有被加载过,如果没有,就执行类加载以及类的初始化。(对象的大小,在类加载的时候就确定了)。 对象在堆内存

    2024年02月15日
    浏览(67)
  • Java JVM分析利器JProfiler 结合IDEA使用详细教程

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 对于我们Java程序员而言,肯定需要对项目工程进行JVM监控分析,最终选择jprofiler,它可以远程链接,使用方便,功能也很强大! JProfiler是一个重量级的JVM监控工具,提供对JVM精确监控,其中堆遍历、

    2024年02月08日
    浏览(42)
  • jvm内存溢出排查(使用idea自带的内存泄漏分析工具)

    想分析堆内存溢出,一定在运行jar包时就写上参数 -XX:+HeapDumpOnOutOfMemoryError ,可以看我之前关于如何运行jar包的文章。若你没有写。可以写上参数,重启你的项目,等你的项目发生下一次堆内存溢出异常,在运行的同级文件夹,将产生类似这样一个文件 java_pid74935.hprof ,若你

    2024年02月09日
    浏览(58)
  • 使用基于jvm-sandbox的对三层嵌套类型的改造

    先简单介绍下基于 jvm-sandbox 的imock工具,是Java方法级别的mock,操作就是监听指定方法,返回指定的mock内容。 jvm-sandbox 利用字节码操作和自定义类加载器的技术,将原始方法替换为模拟代码,从而在应用程序中实现方法级别的模拟。这种方法非常强大,但也需要对字节码操作

    2024年02月13日
    浏览(25)
  • 【jvm系列-09】垃圾回收底层原理和算法以及JProfiler的基本使用

    JVM系列整体栏目 内容 链接地址 【一】初识虚拟机与java虚拟机 https://blog.csdn.net/zhenghuishengq/article/details/129544460 【二】jvm的类加载子系统以及jclasslib的基本使用 https://blog.csdn.net/zhenghuishengq/article/details/129610963 【三】运行时私有区域之虚拟机栈、程序计数器、本地方法栈 https

    2023年04月22日
    浏览(76)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包