JVM内核优化

1.垃圾回收器

  JVM垃圾回收器有串行和并行两种。

  1.1 Serial收集器(串行,单线程),现在使用较少

    Serial一般收集新生代

    SerialOld一般收集老年代(采用标记压缩算法)

  1.2 ParNew收集器(多线程,并行)

    低延迟,采用复制标记算法

  1.3 Parallel收集器(多线程,并行)

    可以控制JVM吞吐量的大小,一般设置为1%的执行时间

  1.4 CMS收集器

    低延迟

    四个阶段:

      CMS-Initial-mark

      CMS-concurrent-mark

      CMS-remark

      CMS-concurrent-sweep

  1.5 G1收集器

    可以像CMS收集器一样,GC操作与应用线程并发执行

    紧凑的空闲内存区间且没有很长的GC停顿时间

    需要可预测的GC暂停耗时

    不想牺牲太多吞吐量性能

    启动后不需要请求更大的Java堆

    

    主要应用场景:
      1.Full GC次数太频繁或消耗时间太长

      2.对象分配的频率以代数方式提升

      3.垃圾回收或内存整理时间太长

原文地址:https://www.cnblogs.com/yszd/p/10011712.html