美文网首页
Day7 JVM 调优工具及其实战

Day7 JVM 调优工具及其实战

作者: 小周爱吃瓜 | 来源:发表于2024-12-01 23:20 被阅读0次
  • JVM 常用指令
    jmap -heap pid. hprof文件
    JProfile, Arthas.
    jvisualvm. 导入 hprof文件,dump后分析
    jstack 分析死锁
    top -p pid. 找出内存占用情况.

top -p -pid 找出进程号
转为16进制得到xxx,此时线程id的16进制表示为.

jstack pid | grep -A 10 xxx ,线程id. 可以查看堆栈信息中导致cpu飙升的原因.

废弃了,Arthas好用.

jinfo 也可以用jvisualvm代替。 可以查看当前的jvm参数.

  • 评估gc压力
    jstat -gc -pid 1000(时间间隔) 100(获取多少次)
Screenshot 2024-12-02 at 22.32.50.png
  • jstat gccapacity pid
    堆内存统计

  • jstat -gcnew pid
    新生代垃圾回收统计

-XX:CICompilerCount=4 -XX:ConcGCThreads=3 -XX:G1ConcRefinementThreads=10 
-XX:G1HeapRegionSize=1048576 
-XX:InitialHeapSize=268435456 
-XX:MarkStackSize=4194304 
-XX:MaxHeapSize=4294967296 
-XX:MaxNewSize=2576351232 
-XX:MinHeapDeltaBytes=1048576 
-XX:NonNMethodCodeHeapSize=5835340 -XX:NonProfiledCodeHeapSize=122911450 -XX:ProfiledCodeHeapSize=122911450 -XX:ReservedCodeCacheSize=251658240 
-XX:+SegmentedCodeCache 
-XX:+UseCompressedClassPointers 
-XX:+UseCompressedOops 
-XX:+UseFastUnorderedTimeStamps -XX:+UseG1GC 
  • 新生代垃圾回收统计


    Screenshot 2024-12-02 at 22.49.04.png
  • 老年代垃圾回收统计


    Screenshot 2024-12-02 at 22.47.23.png

-参数介绍:

S0C 第一个幸存者大小,MC方法区大小,MU方法区使用的空间.
YGC 年轻代垃圾回收次数
FGC 老年代回收次数.

  • 优化思路就是让每次youngc之后存活的对象小于survivor的50%. 尽可能留在年轻代,不触发空间担保进入老年代,减少fullgc频率,避免频繁fullgc对于jvm的影响.

minor gc后,对象会从eden区域移动到s0区域,s0满了之后放到s1区域,如果younggc过后,s0,s1区域还是放不下,触发老空间担保,放入到老年代中.

首先是对象放在Eden区:之后存满了之后进行垃圾回收(YGC)之后放入到s0区,之后满了在进行回收放入到s1区域,往复,之后超过十五次放入到老年代中,如果比较大对象那么先放入到Eden中之后s0,1放不下那么放入到老年代,如果超大对象(文件)直接放入到老年代。

相关文章

  • 3.JVM调优工具

    JVM调优工具 1、JVM调优工具-JDK工具 1.1 jps jps:Java Virtual Machine ...

  • JVM性能调优

    JVM性能调优 JVM性能监控工具介绍

  • jvm监控与调优之jdk命令行工具

    jvm监控与调优之jdk命令行工具 目录 jvm监控与调优之jdk命令行工具jvm的参数类型标准参数X参数XX参数...

  • jvm

    JVM调优 jvm调优成熟的工具已经有很多:jconsole、大名鼎鼎的VisualVM,IBM的Memory A...

  • JVM调优工具详解以及调优实战

    JVM工具 jmap jmap -histo > ./log.txt : 打印JVM堆栈内存信息,实例个数以及...

  • JVM调优方法

    7.调优方法 7.1.JVM调优工具 Jconsole,jProfile,VisualVM Jconsole :j...

  • JVM - 调优工具

    JVM - 调优工具 jconsole Jconsole(Java Monitoring and Manageme...

  • JVM实战调优

    项目介绍 本项目是spring cloud zuul项目,程序内容就是做请求的签名加解密,然后对响应做加密。 项目...

  • JVM调优实战

    jvm可利用多大的内存空间 操作系统 32 位 : 2的32次方 = 4G - 操作系统一半空间= 2g--jvm...

  • JVM实战调优

    首先看自己能不能回答出这些问题。 垃圾回收算法 前六个是分代算法,G1是逻辑分代,物理不分代,ZGC是逻辑、物理都...

网友评论

      本文标题:Day7 JVM 调优工具及其实战

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