一.JVM的参数类型: 1.标配参数: java -version java -help 2.X参数: -Xmixed 混合模式(先编译后执行) -Xint  解释执行 -Xcomp 第一次使用就编译成本地代码 3.XX参数: Boolean类型:公式:-XX:+ (+表示开启 -表示关闭) 问题:如何查看一个正在运行中的java程序,它的某个JVM参数是否开启? public class HelloGC { public static void main(String[] args) thro…
3.JVM参数 在JVM启动参数中,可以设置跟内存.垃圾回收相关的一些参数设置,默认情况不做任何设置JVM会工作的很好,但对一些配置很好的Server和具体的应用必须仔细调优才能获得最佳性能.通过设置我们希望达到一些目标: GC的时间足够的小 GC的次数足够的少 发生Full GC的周期足够的长 前两个目前是相悖的,要想GC时间小必须要一个更小的堆,要保证GC次数足够少,必须保证一个更大的堆,我们只能取其平衡. (1)针对JVM堆的设置,一般可以通过-Xms -Xmx限定其最小.最大值,为了防止…
堆配置 -Xms:初始堆大小 -Xms:最大堆大小 -XX:NewSize=n:设置年轻代大小 -XX:NewRatio=n:设置年轻代和年老代的比值.如:为3表示年轻代和年老代比值为1:3,年轻代占整个年轻代年老代和的1/4 -XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值.注意Survivor区有两个.如3表示Eden: 3 Survivor:2,一个Survivor区占整个年轻代的1/5 -XX:MaxPermSize=n:设置持久代大小 说明: 1…
本文主要是工作过程中总结的一些jvm调优的参数和注意的地方,作为一个备忘录,先占个坑,有时间在来细化具体的实例. gc日志是覆盖的方式如果文件名字固定会导致上一次被覆盖可以采用这个-Xloggc:backv2_gc_%t.log jinfo可以动态修改java -XX:+PrintFlagsFinal -version|grep manageable这些参数 打印java可配置的非稳定参数:java -XX:+PrintFlagsFinal ,输出的信息中 ":=" 表明了参数被用户或…
(1)参数 -Xms:初始堆大小 -Xmx :最大堆大小 此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存 -Xmn :年轻代大小 整个堆大小=年轻代大小 + 年老代大小 + 持久代大小.持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小.此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8. -XX:NewSize:设置年轻代大小 -XX:MaxNewSize:年轻代最大值 -XX:NewRatio 年老代与年轻代的比值 -XX:SurvivorRat…
以下配置主要针对分代垃圾回收算法而言. 堆大小设置 年轻代的设置很关键 JVM中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理内存限制.32位系统下,一般限制在1.5G~2G:64为操作系统对内存无限制.在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m. 典型设置: java -Xmx3550m -Xms3550m -Xmn2g –Xss128k -Xmx3550…
一.Throughput收集器(吞吐量)-XX:+UseParallelGC-XX:+UseParallelOldGC *参数调整:通过调整堆大小,减少GC停顿时间,增大吞吐量增强堆大小可以减少Full GC频率,但却会增加停顿时间1.手动调整-Xmn -Xms -XX:NewRatio=N手动指定堆内存大小和代空间比例,一般要多次试验2.自动参数调整-XX:MaxGCPauseMillis=N 可接受最大停顿时间-XX:GCTimeRatio=N 可接受GC时间占比(目标吞吐量) 吞吐量=1-…
JVM常用参数配置 -Xmx2048m 最大堆大小 -Xms1024m 初始堆大小 -Xmn1024m 年轻代大小 -XX:SurvivorRatio=8 Eden区与Survivor区的大小比值,设置为8,则两个Survivor区与一个Eden区的比值为2:8,一个Survivor区占整个年轻代的1/10 -XX:+UseG1GC 使用 G1 (Garbage First) 垃圾收集器 -XX:MaxTenuringThreshold=14 提升年老代的最大临界值(tenuring thres…
转自:http://blog.csdn.net/opensure/article/details/46715769 JVM常用调试参数: –verbose:gc在虚拟机发生内存回收时在输出设备显示信息 -Xloggc:filename把GC相关日志信息记录到文件以便分析 -XX:-HeapDumpOnOutOfMemoryError当首次遭遇OOM时导出此时堆中相关信息 -XX:OnError="<cmdargs>;<cmd args>" 出现致命ERROR之后…
GC通用参数 -Xmn -Xms -Xmx -Xss 年轻代 最小堆 最大堆 栈空间 -XX:+UseTLAB 使用TLAB,默认打开 -XX:+PrintTLAB 打印TLAB的使用情况 -XX:TLABSize 设置TLAB大小(一般不建议改动) -XX:+DisableExplictGC 线上环境一定要打开,避免写System.gc(),开启的话手动gc就不管用 ,FGC -XX:+PrintGC 开启打印GC日志 -XX:+PrintGCDetails 打印GC详细信息 -XX:+Pri…