zoukankan      html  css  js  c++  java
  • JVM常用命令

    1 jps

    jps -ml

    2 jstack

    top -Hp 31951 # 以线程模式查看进程的所有线程情况

    printf '%x' 31998 # 值为7cfe 打印某个线程的16进制

    jstack 31951 | grep 7cfe -A 20

    jstack -l pid

    3 jstat

    jstat -gc PID

    GCT 6.964
    FGCT 0.000
    FGC 0
    YGCT 6.964
    YGC 364
    CCSU 16223.4
    CCSC 17152.0
    MU 147422.0
    MC 152576.0
    OU 435654.0
    OC 1677312.0
    EU 430988.7
    EC 838912.0
    S1U 0.0
    S0U 3113.9
    S1C 104832.0
    S0C 104832.0

    4 如何查看新生代对象增长的速度

    jstat -gc 436 1000 10 每秒一次,共10次
    根据young gc的时间去做统一,看每次young gc时老年代的内存占用情况

    5 jmap

    jmap -heap PID 没啥用,不如jstat
    jmap -histo PID

    jmap -dump:live,format=b,file=dump.hprof PID
    jhat dump.hprof -port 7000

    6 预估性优化

    • 尽量让每次YoungGC后的存活对象小于Survivor空间的50%,都留存在年轻代里面
    • 尽量不让对象进入老年代
    • 尽量降低FullGC频率,避免FullGC对JVM性能的影响
  • 相关阅读:
    css问题
    前端性能优化整理
    算法之排序
    浅谈webpack优化
    js设计模式
    事件模型
    浏览器缓存
    ucGUI 12864 从打点起
    ucGUI例程收藏
    Qt 自动搜索串口号列表
  • 原文地址:https://www.cnblogs.com/zerodsLearnJava/p/12826197.html
Copyright © 2011-2022 走看看