精华内容
下载资源
问答
  • JVM调优参数

    2020-07-04 20:02:13
    JVM调优参数 ParNew+CMS垃圾回收器参数 参数 描述 -Xms-XX:InitialHeapSize java堆内存大小 -Xmx-XX:MaxHeapSize java堆内存最大大小 -Xmn java堆内存中新生代大小,扣除新生代剩下的就是老年代内存大小...

    JVM调优参数

    ParNew+CMS垃圾回收器参数

    参数 描述
    -Xms
    -XX:InitialHeapSize
    java堆内存大小
    -Xmx
    -XX:MaxHeapSize
    java堆内存最大大小
    -Xmn java堆内存中新生代大小,扣除新生代剩下的就是老年代内存大小
    -XX:NewSize 初始新生代大小
    -XX:MaxNewSize 最大新生代大小
    -XX:PermSize
    -XX:MetaspaceSize
    永久代大小
    -XX:MaxPermSize
    -XX:MaxMetaspaceSize
    永久代最大大小
    -Xss 每个线程的栈内存大小
    -XX:MaxTenuringThreshold 设置新生代GC进老年代的年龄,默认是15
    -XX:TargetSurvivorRatio 目标存活率,用于动态年龄判断,默认50%
    -XX:PretenureSizeThreshold 大对象直接进入老年代
    -XX:SurvivorRatio 设置eden和survivor大小比例
    -XX:+UseParNewGC 使用ParNew垃圾回收器对新生代进行回收
    -XX:ParallelGCThreads 设置垃圾回收器使用线程的数量,一般不要手动设置这个参数,默认跟机器核数相同就可以了
    -XX:CMSInitiatingOccupancyFaction 设置老年代占用多少比例时触发CMS,jkd1.6里默认是92%,用来存放并发清理时新移到老年代的对象,这里面就有浮动垃圾
    -XX:+UseCMSInitiatingOccupancyOnly 和上一个参数配套使用,如果不加这个,就只有第一次是92%,加了这个参数就可以保证每次92%的时候都进行GC
    -XX:+UseCMSCompactAtFullCollection 这个是默认就打开了的,意思是Full GC以后要再次Stop the World,进行内存整理,避免内存碎片
    -XX:CMSFullGCsBeforeCompaction 意思是执行多次Full GC后再执行一次内存整理,默认是0,就表示每次Full GC后都再进行一次内存整理
    -XX:+CMSParallelInitialMarkEnabled 这个参数会在CMS初始化标记阶段开启多线程并发执行,减少STW
    -XX:+CMSScavengeBeforeRemark 这个参数会在CMS重新标记阶段之前,先尽量进行一次Young GC
    -XX:+CMSParallelRemarkEnabled CMS重新标记的时候开启多线程并发执行,减少STW
    -XX:+DisableExplicitGC 这个参数是禁止显示执行GC,不允许通过代码触发GC
    -XX:HeapDumpOnOutOfMemoryError OOM的时候自动dump一份内存快照
    -XX:HeapDumpPath=/usr/local/app/oom 指定dump内存快照存放地址
    -XX:+PrintGCDetails 打印详细的GC日志
    -XX:+PrintGCTimeStamps 这个参数可以打印每次GC发生的时间
    -Xloggc:gc.log 这个参数可以设置,将gc日志写入磁盘文件
    -XX:+PrintHeapAtGC 在每次GC前都要GC堆的概况输出
    下面的参数不常用
    -XX:-HandlePromotionFailure 新生代所有对象大小超过老年代剩余空间时会验证这个参数,决定是否比较之前进入老年代的活对象的平均大小(空间担保规则,jdk1.6之后默认开启)
    -XX:+TraceClassLoading 追踪类加载的情况,会通过日志打印出来JVM加载了哪些类
    -XX:+TraceClassUnloading 追踪类卸载的情况,会通过日志打印出来JVM卸载了哪些类
    -XX:SoftRefLRUPolicyMSPerMB 代表每MB空闲内存空间可以允许SoftReference对象存活多久,默认1000(次参数一般采用默认,如果被误设为0,高负载时会导致动态代理生成的类吃掉Metaspace内存,导致原空间OOM)

    G1垃圾回收器参数

    参数 描述
    -XX:UseG1GC 指定使用G1垃圾回收器
    -XX:G1HeapRegionSize=2M 指定每个Region大小,一般不指定,使用默认的(内存/2048)
    -XX:G1NewSizePercent 指定新生代占堆内存初始百分比大小,一般使用默认值5%
    -XX:G1MaxNewSizePercent 设置新生代占堆内存最大的百分比大小,一般使用默认值60%
    -XX:SurvivorRatio=8 eden和survivor比例,在G1回收器中依然可以使用
    -XX:MaxGCPauseMills 设置G1执行GC最多可以让系统停顿的时间,默认值是200ms(这个参数是G1垃圾回收器最重要的参数)
    -XX:MasTenuringThreshold 设置进入老年代的年龄(G1也是可以使用的)
    -XX:InitiatingHeapOccupancyPercent 设置老年代占堆内存多少比例时,触发新生代老年代混合回收,默认是45%
    -XX:G1MixedGCCountTarget 设置一次回收过程中最后一步混合回收执行几次,默认8次
    -XX:G1HeapWastePercent 设置空出来多少百分比的Region时,混合回收就停止执行,默认5%
    -XX:G1MixedGCLiveThresholdPercent 设置回收Region时,存活对象低于多少百分比的Region才可以回收,默认是85%。如果内存不够了也会强制执行超过85%的Region
    展开全文
  • jvm调优参数

    2021-06-07 09:31:05
    -Xms1G // 初始化堆内存 -Xmx // 最大堆内存 -XX:+UseSerialGC // 新生代使用serial垃圾回收器
    -Xms1G
    // 初始化堆内存
    -Xmx
    // 最大堆内存
    -XX:+UseSerialGC
    // 新生代使用serial垃圾回收器

     

    展开全文
  • jvm 调优参数

    2020-03-05 23:14:30
    老年代过小,则很容易触发Full GC,Full GC频率过高,这就是这个参数会造成的影响。 -XX:SurvivorRation = value . 设置Eden与Srivivor的大小比例,如果该值为8,代表一个Survivor是Eden的1/8,是整个...
    • -Xmx value 指定最大的堆大小

    • -Xms value 指定初始的最小堆大小

    • -XX:NewSize = value 指定新生代的大小

    • -XX:NewRatio = value 老年代与新生代的大小比例。默认情况下,这个比例是2,也就是说老年代是新生代的2倍大。老年代过大的时候,Full GC的时间会很长;老年代过小,则很容易触发Full GC,Full GC频率过高,这就是这个参数会造成的影响。

    • -XX:SurvivorRation = value . 设置Eden与Srivivor的大小比例,如果该值为8,代表一个Survivor是Eden的1/8,是整个新生代的1/10。

    展开全文
  • 基本jvm调优参数作用

    2020-06-02 10:57:45
    目录jvm调优参数-Xms、-Xmx-Xmn-Xss-XX:NewRatio-XX:SurvivorRatio-XX:PremSize、-XX:MaxPremSize图解jvm调优参数作用区域参考文献: jvm调优参数 -Xms、-Xmx -Xms4g: 设置堆内存初始大小为4g -Xmx4g: 设置堆内存...

    jvm调优参数

    -Xms、-Xmx

    -Xms4g: 设置堆内存初始大小为4g
    -Xmx4g: 设置堆内存最大值大小为4g

    可以设置-Xms与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。

    -Xmn

    -Xmn1536m:设置年轻代大小为1536m

    增大年轻代后,将会减小年老代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。

    -Xss

    -Xss512k:设置每个线程堆栈大小为512k。

    JDK5.0以后每个线程堆栈大小为1MB,以前每个线程堆栈大小为256K。应根据应用线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。

    -XX:NewRatio

    -XX:NewRatio=4: 设置年轻代和年老代的比例为1:4,年轻代占整个堆栈的1/5

    其中年轻代包括一个Eden区和两个Survivor区

    -XX:SurvivorRatio

    -XX:SurvivorRatio=8: 设置 两个 Survivor区 和 Eden区 的比例为1:1:8,一个Survivor区占年轻代的1/10
    ~~~

    -XX:PremSize、-XX:MaxPremSize

    -XX:PremSize=100m: 设置永久代初始大小为100m。
    -XX:MaxPremSize=256m: 设置永久代最大内存为256m。

    注JDK1.8后(包括1.8)移除了永久代,永久代(PermGen)被元空间(MetaSpace)替代。这里你是否有很多问好???有就看第二篇参考的元空间

    图解jvm调优参数作用区域

    通过一张图来了解如何通过参数来控制各区域的内存大小:
    在这里插入图片描述

    参考文献:

    https://blog.csdn.net/jisuanjiguoba/article/details/80176223
    http://zyouwei.com/%E6%8A%80%E6%9C%AF%E7%AC%94%E8%AE%B0/Java/Java-Memory-Model.html

    展开全文
  • 什么是虚拟机参数配置 在虚拟机运行的过程中,如果可以跟踪系统的运行状态,那么对于问题的故障排查会有一定的帮助,为此,在虚拟机提供了一些跟踪系统状态的参数,使用给定的参数执行Java虚拟机,就可以在系统运行...
  • 这种文章挺难写的,一是JVM参数巨多,二是内容枯燥乏味,但是想理解JVM调优又是没法避开的环节,本文主要用来总结梳理便于以后翻阅,主要围绕四个大的方面展开,分别是JVM调优参数、JVM调优方法(流程)、JVM调优工具、JVM...
  • java6 JVM 调优参数大全

    2012-01-14 14:03:32
    java6 JVM 调优参数大全 -XX
  • JVM调优参数总结

    2019-10-03 17:55:45
    JVM调优参数总结 Xmn、Xms、Xmx、Xss都是JVM对内存的配置参数。 堆内存分配 JVM初始分配的内存由-Xms指定,默认是物理内存的1/64 JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4 默认空余堆内存小于40%时,JVM就...
  • 一、JVM调优参数简介1、 JVM参数简介-XX 参数被称为不稳定参数,之所以这么叫是因为此类参数的设置很容易引起JVM 性能上的差异,使JVM 存在极大的不稳定性。如果此类参数设置合理将大大提高JVM 的性能及稳定性。不...
  • JVM 调优参数总结

    2020-11-19 18:31:12
    JVM调优小结杂谈JVM参数基本参数其他参数指针压缩逃逸分析EdenOld较大对象对直接进入老年代对象动态年龄判断老年代空间分配担保机制垃圾收集器CMS收集器(-XX:+UseConcMarkSweepGC(old))G1(-XX:+UseG1GC)收集器的...
  • 常用的JVM调优参数 -Xms:设置初始堆大小 -Xmx:设置最大堆大小 -Xmn:设置年轻代的大小 -Xss:设置每个线程可使用的内存大小,即栈的大小。在相同物理内存下,减小这个值能生成更多的线程,当然操作系统对一个进程内的...
  • 说明 JVM调优:一个高大上的技术点,因为若公司业务量小,生产中几乎遇不到该类问题,遇到频率最高的也许就是在跳槽面试时了。其实,随着公司体量的上升,早晚有...原文连接:JVM调优参数、方法、工具以及案例总结 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,050
精华内容 2,020
关键字:

jvm调优参数