JVM调优参数整理


参数名


含义


默认值


描述


-Xms


初始化堆大小


物理内存的1/64(<1G)


默认空余堆内存比例(MinHeapFreeRatio)小于40%的时候JVM就会增大堆内存直到-Xmx限制


-Xmx


最大堆内存


物理内存的1/4


默认空余堆内存比例(MinHeapFreeRatio)大于70%时候JVM就会减小堆内存直到-Xmx最小值


-Xmn


年轻代大小


增大年轻代就会减小老年代,Sun公司推荐大小为堆的3/8


-XX:PermSize


永久代初始值


物理内存的1/64(<1G)


-XX:MaxPermSize


永久代最大值


物理内存的1/4


-Xss


每个线程的堆栈大小


-XX:NewRatio


年轻代与年老代的比值


-XX:NewRatio=4表示年轻代与年老代所占比值为1:4,年轻代占整个堆栈的1/5
Xms=Xmx并且设置了Xmn的情况下,该参数不需要进行设置。


-XX:SurvivorRatio


Eden区与Survivor区的大小比值


设置为8,则两个Survivor区与一个Eden区的比值为2:8,一个Survivor区占整个年轻代的1/10


-XX:+UseSerialGC


Serial(年轻代)


单线程,GC时其它线程暂停


-XX:+UseParNewGC


ParNew


多线程


-XX:+UseParallelGC


Parallel


吞吐量大


-XX:+UseSerialOldGC


SerialOld


-XX:+UseParallelOldGC


ParallelOld


-XX:+UseConcMarkSweepGC


CMS


低延时


-XX:+UseG1GC


G1


-XX:PretenureSizeThreshold


超过这个大小的,直接在老年代分配


-XX:+UseBiasedLocking


是否开启偏向锁


开启


+开启,-不开启


-XX:+UseSpinning


是否开启自旋


开启


+开启,-不开启


-XX:PreBlockSpin


自旋多少次升级为重量级

原文地址:https://www.cnblogs.com/shengedong/p/12531368.html

时间: 2024-10-05 23:30:56

JVM调优参数整理的相关文章

JVM性能调优2:JVM性能调优参数整理

本系列包括: JVM性能调优1:JVM性能调优理论及实践(收集整理) JVM性能调优2:JVM性能调优参数整理 JVM性能调优3:JVM_堆溢出分析过程和命令 JVm性能调优4:GC日志分析 JVM性能调优5:Heap堆分析方法  序号 参数名 说明 JDK 默认值 使用过 1 JVM执行模式 2 -client -server 设置该JVM运行与Client 或者Server Hotspot模式,这两种模式从本质上来说是在JVM中运行不同的JIT(运行时编译模块)代码,并且两者在JVM内部

转: jvm调优参数总结

JVM里的GC(Garbage Collection)的算法有很多种,如标记清除收集器,压缩收集器,分代收集器等等,详见HotSpot VM GC 的种类 现在比较常用的是分代收集(generational collection,也是SUN VM使用的,J2SE1.2之后引入),即将内存分为几个区域,将不同生命周期的对象放在不同区域里:young generation,tenured generation和permanet generation.绝大部分的objec被分配在young gener

JVM调优参数

堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制:系统的可用虚拟内存限制:系统的可用物理内存限制.32位系统下,一般限制在1.5G~2G:64为操作系统对内存无限制.我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m.典型设置: java -Xmx3550m -Xms3550m -Xmn2g -Xss128k-Xmx3550m:设置JVM最大可用内存为3550M.-Xms3550m:设

hadoop作业调优参数整理及原理

1 Map side tuning参数 1.1 MapTask运行内部原理 当map task开始运算,并产生中间数据时,其产生的中间结果并非直接就简单的写入磁盘.这中间的过程比较复杂,并且利用到了内存buffer来进行已经产生的部分结果的缓存,并在内存buffer中进行一些预排序来优化整个map的性能.如上图所示,每一个map都会对应存在一个内存buffer(MapOutputBuffer,即上图的buffer in memory),map会将已经产生的部分结果先写入到该buffer中,这个b

JVM 调优参数详解

GC有两种类型:Scavenge GC 和Full GC 1.Scavenge GC 一般情况下,当新对象生成,并且在Eden申请空间失败时,就会触发Scavenge GC,堆的Eden区域进行GC,清除非存活对象,并且把尚且存活的对象移动到Survivor的两个区中. 2.Full GC 对整个堆进行整理,包括Young.Tenured和Perm.Full GC 比Scavenge GC要慢,因此应该尽可能减少Full GC,有如下原因可能导致Full GC a.Tenured被写满: b.P

生产环境下JVM调优参数的设置实例

JVM基础:生产环境参数实例及分析 原始配置: -Xms128m -Xmx128m -XX:NewSize=64m -XX:PermSize=64m -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=78 -XX:ThreadStackSize=128k-Xloggc:logs/gc.log -Dsun.rmi.dgc.server.gcInterval=3600000 -Dsun.rmi.dgc.client.gcInterv

hadoop作业调优参数整理及原理(主要为shuffle过程)

1 Map side tuning参数 1.1 MapTask运行内部原理 当map task开始运算,并产生中间数据时,其产生的中间结果并非直接就简单的写入磁盘.这中间的过程比较复杂,并且利用到了内存buffer来进行已经产生的 部分结果的缓存,并在内存buffer中进行一些预排序来优化整个map的性能.如上图所示,每一个map都会对应存在一个内存 buffer(MapOutputBuffer,即上图的buffer in memory),map会将已经产生的部分结果先写入到该buffer中,这

Hbase集群搭建及所有配置调优参数整理及API代码运行

最近为了方便开发,在自己的虚拟机上搭建了三节点的Hadoop集群与Hbase集群,hadoop集群的搭建与zookeeper集群这里就不再详细说明,原来的笔记中记录过.这里将hbase配置参数进行相应整理,方便日后使用. 首先vi ~/.bash_profile将hbase的环境变量进行配置,最后source ~./bash_profile使之立即生效 1.修改hbase-env.sh 由于我使用的是外置的zookeeper,所以这里HBASE_MANAGES_ZK设置为,设置参数: # The

jvm 调优参数

-server -Xms6000M -Xmx6000M -Xmn500M -XX:PermSize=500M -XX:MaxPermSize=500M -XX:SurvivorRatio=65536 //设置年轻代中Eden区与Survivor区的大小比值. -XX:MaxTenuringThreshold=0 //设置垃圾最大年龄.如果设置为0的话,则年轻代对象不经过Survivor区,直接进入年老代 .对于年老代比较多的应用,可以提高效率. -Xnoclassgc //表示不对class进行