zoukankan      html  css  js  c++  java
  • JVM 备注

    一、堆内存分布:
    JAVA 分为堆内存和栈内存,GC主要针对堆内存
      1)Young: 存放新生内存对象
        1.1)Eden JVM 刚开始分配的对象
        1.2)Survivor1(from)
        1.3)Survivor2(to)两个区域一样大,Eden没有回收掉的对象会在两个区域来回拷贝,达到一定次数后移到Old。
        即该对象在Young中存留的时间。
      2)Old: 存放声明周期较长的内存对象
      3)Permanent:永久保存区,存放class和meta信息


    二、垃圾回收的时机:
      1)当Eden代内存满时,会引发一次普通GC(Minor GC),该GC仅回收年轻代
      2)当年老代满时会引发Full GC,Full GC将会同时回收年轻代、年老代
      3)当永久代满时也会引发Full GC,会导致Class、Method元信息的卸载

      Full GC 消耗的时间较长,要尽量减少。

    三、JVM 主要参数:
      -Xms<size> 设置JVM初始化堆内存大小
      -Xmx<size> 设置JVM最大的堆内存大小
      -Xss<size> 设置JVM栈内存大
      -Xmn<size> 设置JVM年轻代大小
      -XX:NewRatio 设置年轻代(包括Eden和两个Survivor区)与年老代的比值(除去持久代)
      -XX:SurvivorRatio= 设置年轻代中Eden区与Survivor区的大小比值
      -XX:MaxPermSize= 设置持久代大小

    四、配置优化:

      参考:http://www.cnblogs.com/likehua/p/3369823.html

  • 相关阅读:
    锐捷交换机密码恢复
    adobe cs3系列产品官方帮助网页(中文)
    网页设计视频教程
    锐捷交换机、路由器配置手册
    WINPE下如何直接删除联想隐藏分区?
    IWMS实现频道页面的方法
    SATA、SCSI、SAS区别与特点
    自定义系统必备
    自己写的Web服务器
    尝试MVP模式
  • 原文地址:https://www.cnblogs.com/Fredric-2013/p/5278731.html
Copyright © 2011-2022 走看看