美文网首页
jvm问题跟踪

jvm问题跟踪

作者: 吃花生的小猴子 | 来源:发表于2017-12-13 17:38 被阅读0次
  • 查看系统日志,是否有exception 发生
    top 命令查看当前系统状态


    image.png

如果某个进程占大量cpu或内存MEM,获取对应的进程号(pid)或者通过jps获得对应应用的进程号,例如: pid = 18541,再通过进程号拿到进程对应的线程情况
ps -mp 18541 -o THREAD,tid,time

image.png

或者
top -Hp 18541

image.png

比如拿到可疑的线程号 18616,将其转换为16进制

printf "%x\n" 18616

48b8
然后使用jstack 查看对应的线程信息
jstack 18541 | grep 48b8

image.png
  • 查看系统gc情况
    jstat -gcutil 11977 3000
    查看进程号为11977的应用gc情况,隔3秒打印
    image.png

s0,s1为年轻代的两个survivor 空间占比
e 为年轻代的Eden空间占比
o 为old 老年代空间占比
m 为metaspace空间
ccs ??
YGC 年轻化gc次数
YGCT 年轻代gc耗时
FGC Full GC 次数
FGCT FullGC 耗时
GCT 总的GC耗时

如果FullGC频繁,可以用jmap dump系统内存快照
jmap -dump:format=b,file=heapdump 11977

或者
jmap -histo 11977 > jmap.log
dump 下来的信息可以用jhat 或者 jvisualvm 或者mat上查看

相关文章

  • jvm问题跟踪

    查看系统日志,是否有exception 发生top 命令查看当前系统状态image.png 如果某个进程占大量cp...

  • MAT(Memory Analyzer Tool)使用心得

    起因:最近在跟踪产品的性能问题,期间主要问题体现在JVM的内存回收问题,使用MAT工具进行JVM内存分析(也可对a...

  • jvm(3)-虚拟机参数

    一、作用 jvm运行中,可以跟踪系统的运行状态。jvm提供一些跟踪系统状态的参数,可以在运行时打印相关日志。主要围...

  • 深入理解JVM(三)——配置参数

    JVM配置参数分为三类参数: 1、跟踪参数 2、堆分配参数 3、栈分配参数 这三类参数分别用于跟踪监控JVM状态,...

  • jvm参数

    常用的JVM参数 跟踪JAVA虚拟机的垃圾回收 GC日志:jvm垃圾回收,记录jvm的运行状态,oom内存溢出的报...

  • JVM诊断

    JVM诊断 Btrace 一种用于Java平台的安全,动态的跟踪工具 BTrace可用于动态跟踪正在运行的Java...

  • JVM常用参数配置

    本文主要内容: Trace跟踪参数 堆的分配参数 栈的分配参数 JVM其他参数 既然学习JVM,阅读GC日志是处理...

  • 深入JVM内核3 常用JVM配置参数

    深入JVM内核 目录 Trace跟踪参数 -verbose:gc -XX:+printGC可以打印GC的简要信息 ...

  • JVM第三天-GC算法

    一、JVM常见参数配置 Trace 跟踪的参数 1.打印GC日志信息 -verbose:gc -XX:+Prin...

  • Java内存跟踪工具-NMT

    概述 Java7U40之后JDK提供了Native Memory Tracking工具,跟踪JVM内部的内存使用,...

网友评论

      本文标题:jvm问题跟踪

      本文链接:https://www.haomeiwen.com/subject/oqkzixtx.html