前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >jvm 性能调优工具之 jinfo

jvm 性能调优工具之 jinfo

作者头像
java404
发布2018-05-18 15:03:57
1.5K0
发布2018-05-18 15:03:57
举报
文章被收录于专栏:java 成神之路

概述

jinfo 是 JDK 自带的命令,可以用来查看正在运行的 java 应用程序的扩展参数,包括Java System属性和JVM命令行参数;也可以动态的修改正在运行的 JVM 一些参数。当系统崩溃时,jinfo可以从core文件里面知道崩溃的Java应用程序的配置信息

jinfo 用法

参数说明
  • pid 对应jvm的进程id
  • executable core 产生core dump文件
  • [server-id@]remote server IP or hostname 远程的ip或者hostname,server-id标记服务的唯一性id
option
  • no option 输出全部的参数和系统属性
  • -flag name 输出对应名称的参数
  • -flag [+|-]name 开启或者关闭对应名称的参数
  • -flag name=value 设定对应名称的参数
  • -flags 输出全部的参数
  • -sysprops 输出系统属性

Javacore 概述

Javacore,也可以称为“threaddump”或是“javadump”,它是 Java 提供的一种诊断特性,能够提供一份可读的当前运行的 JVM 中线程使用情况的快照。即在某个特定时刻,JVM 中有哪些线程在运行,每个线程执行到哪一个类,哪一个方法。 应用程序如果出现不可恢复的错误或是内存泄露,就会自动触发 Javacore 的生成。

示例一: no option

命令:jinfo pid 描述:输出当前 jvm 进程的全部参数和系统属性

示例二: -flag name

命令:jinfo -flag name pid 描述:输出对应名称的参数

使用该命令,可以查看指定的 jvm 参数的值。如:查看当前 jvm 进程是否开启打印 GC 日志。

示例三:-flag [+|-]name

命令:jinfo -flag [+|-]name pid 描述:开启或者关闭对应名称的参数

使用 jinfo 可以在不重启虚拟机的情况下,可以动态的修改 jvm 的参数。尤其在线上的环境特别有用。

使用如下:

示例四:-flag name=value

命令:jinfo -flag name=value pid 描述:修改指定参数的值。

同示例三,但示例三主要是针对 boolean 值的参数设置的。 如果是设置 value值,则需要使用 name=value 的形式。

使用如下:

注意事项 :

jinfo虽然可以在java程序运行时动态地修改虚拟机参数,但并不是所有的参数都支持动态修改

示例五: -flags

命令:jinfo -flags pid 描述:输出全部的参数

示例六:-sysprops

命令:jinfo -sysprops pid 描述:输出当前 jvm 进行的全部的系统属性


本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018.01.28 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 概述
  • jinfo 用法
    • 参数说明
      • option
      • Javacore 概述
      • 示例一: no option
      • 示例二: -flag name
      • 示例三:-flag [+|-]name
      • 示例四:-flag name=value
      • 示例五: -flags
      • 示例六:-sysprops
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档