16.JVM垃圾回收

作者: 强某某 | 来源:发表于2020-03-06 12:12 被阅读0次

JDK内置工具

  1. javap
    java反编译工具,主要用于根据Java字节码文件反汇编为Java源代码文件。


    1.png
  2. JPS
    jsp显示当前所有java进程pid的命令


    2.png
  3. jstat


    3.png
4.png
  1. jcmd


    5.png
  2. jinfo


    6.png
  3. jhat


    7.png
  4. jmap


    8.png
  5. jstack


    9.png
  6. Jconsole


    10.png
  7. JvisualVM


    11.png

调优基本概念

在调整性能时,JVM有三个组件:

  1. 堆大小调整
  2. 垃圾收集器调整
  3. JIT编译器

大多数调优选项都与调整堆大小和为具体的情况选择最合适的垃圾收集器有关。
JIT编译器在新版本JVM上面已经优化很好,所以一般不需要进行操作,而且即使操作也是源码级别的难度比较高。

通常,在调优Java应用程序时,重点是以下两个主要目标之一:

  • 响应性:应用程序或系统对请求的数据进行响应的速度,对于专注于响应性的应用程序,长的暂停时间是不可接受的,重点是在短时间内做出回应。
  • 吞吐量:侧重于在特定时间段内最大化应用程序的工作量,对于专注于吞吐量的应用程序,高暂停时间是可接受的。由于高吞吐量应用程序在较长时间内专注于基准测试,因此不需要考虑快速响应时间。
  • 系统瓶颈核心还是在应用代码,一般情况下无需过多调优,JVM本身在不断的优化

常用JVM参数

12.png

GC调优思路

  1. 分析场景
    例如:启动速度慢,偶尔出现响应慢于平均水平或者出现卡顿
  2. 确定目标
    内存占用、低延时、吞吐量
  3. 收集日志
    通过参数配置收集GC日志;通过JDK工具查看GC状态
  4. 分析日志
    使用工具辅助分析日志,查看GC次数,GC时间
  5. 调整参数
    切换垃圾收集器或者调整垃圾收集器参数

垃圾收集器Parallel参数调优

13.png

Parallel是新版默认的收集器,而且吞吐量优先

垃圾收集器CMS(1.9被废弃)参数调优

14.png

垃圾收集器G1参数调优

15.png

运行时JIT编译器优化参数

JIT编译指的是字节码编译为本地代码(汇编)执行,只有热点代码才会编译为本地代码。解释器执行节约内存,反之可以使用编译执行来提升效率


16.png

相关文章

  • 16.JVM垃圾回收

    JDK内置工具 javapjava反编译工具,主要用于根据Java字节码文件反汇编为Java源代码文件。1.png...

  • 简单理解垃圾回收

    什么是垃圾回收? 垃圾回收的是什么? 如何判断为垃圾? 垃圾是怎样被回收的? 垃圾回收哪些区域的内存? 什么是垃圾...

  • JVM(二) GC算法与分代回收策略

    可达性分析 GCRoot场景 垃圾回收算法 分代回收策略 引用 垃圾回收 垃圾回收(Garbage Collect...

  • JVM调优之垃圾定位、垃圾回收算法、垃圾处理器对比

    谈垃圾回收器之前,要先讲讲垃圾回收算法,以及JVM对垃圾的认定策略,JVM垃圾回收器是垃圾回收算法的具体实现,了解...

  • 01垃圾回收机制

    垃圾回收(Garbage Collection,GC) 垃圾回收就是释放垃圾占用的空间 内存的动态分配和垃圾回收,...

  • Java 垃圾收集(GC)浅谈

    Java 垃圾收集(GC)浅谈 为什么需要垃圾回收?哪些内存需要回收?什么时候回收?如何回收? 为什么需要垃圾回收...

  • JVM垃圾回收机制

    JVM垃圾回收 整体思维导图 带着问题理解JVM垃圾回收机制 Java为什么需要垃圾回收机制; 回收哪部分垃圾; ...

  • 垃圾回收

    如何查看当前JVM使用的垃圾回收器? 如何指定使用CMS回收? 如何打印回收日志? 垃圾回收过程 CMS垃圾回收的...

  • JVM常见垃圾回收器介绍

    垃圾回收器简介 在新生代和老年代进行垃圾回收的时候,都是要用垃圾回收器进行回收的,不同的区域用不同的垃圾回收器。分...

  • JavaScript的垃圾回收机制

    大纲 1、认识垃圾回收机制2、垃圾回收机制的原理3、垃圾回收机制的标记策略4、垃圾回收机制与内存管理 1、认识垃圾...

网友评论

    本文标题:16.JVM垃圾回收

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