JVM 调优工具

jps:列出java进程,类似于ps命令
  • -q:指定jps只输出进程ID ,不输出类的短名称
  • -m:可以用于输出传递给Java进程(主函数)的参数
  • -l:可以用于输出主函数的完整路径
  • -v:可以显示传递给JVM的参数

jinfo:查看正在运行的Java应用程序的扩展参数,甚至支持在运行时,修改部分参数
  • -flag <name>:打印指定JVM的参数值
  • -flag [+|-]<name>:设置指定JVM参数的布尔值
  • -flag <name>=<value>:设置指定JVM参数的值

jmap:生成Java应用程序的堆快照和对象的统计信息
  • jmap -histo 3256 >/d/heap_statistics.txt
    • num     #instances         #bytes  class name
      ----------------------------------------------
         1:        380169       33768080  [C
         2:         59220       18384344  [I
         3:         53850       11702368  [B
         4:        314593        7550232  java.lang.String
         5:         88442        6106848  [Ljava.lang.Object;
         6:        152528        6101120  sun.java2d.pipe.Region
         7:        167642        5364544  java.awt.Rectangle
         8:         44713        4900648  java.lang.Class
         9:        133110        4259520  com.intellij.openapi.vfs.newvfs.impl.VirtualFileImpl
        10:        129475        4143200  java.util.AbstractList$Itr
      ......
      20954:             1             16  sun.util.locale.provider.SPILocaleProviderAdapter
      20955:             1             16  sun.util.locale.provider.TimeZoneNameUtility$TimeZoneNameGetter
      20956:             1             16  sun.util.resources.LocaleData
      20957:             1             16  sun.util.resources.LocaleData$LocaleDataResourceBundleControl
      Total       3620634      175757120
  • jmap -dump:format=b,file=c:\heap.hprof 2972:导出堆数据,导出的堆数据使用 Eclipse MAT(memory Analysis Tools)分析

jvm GC log 分析工具:
github 上有在维护

jstack:线程dump
  • -l 打印锁信息
  • -m 打印java和native的帧信息
  • -F 强制dump,当jstack没有响应时使用
  •  jstack 8384 > /d/jstack

JConsole:图形界面(JDK自带,旧版,被VisualVM替代,需要实时连接到 JVM,不能做离线数据分析)

VisualVM:图形界面(JDK自带,大部分功能需要实时连接到 JVM,功能强大)

heap分析工具:
MAT(memory analysis tools):非常强大,用的很多
VisualVM:JDK自带工具 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值