精华内容
下载资源
问答
  • JVM常用参数设置

    2019-08-03 01:03:05
    NULL 博文链接:https://ajita.iteye.com/blog/1985134
  • jvm常用参数设置

    2016-04-10 23:26:38
    默认值:物理内存的1/64(),默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制。 设置命令-Xms2 最大堆大小: 默认值:物理内存的1/4(),默认(MaxHeapFreeRatio参数可以...

    1 初始堆大小:
    默认值:物理内存的1/64(<1GB),默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制。
    设置命令-Xms

    2 最大堆大小:
    默认值:物理内存的1/4(<1GB),默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到 -Xms的最小限制。

    3 年轻代大小
    默认值:注意:此处的大小是(eden+ 2 survivor space).与jmap -heap中显示的New gen是不同的。
    整个堆大小=年轻代大小 + 年老代大小 + 持久代大小.
    增大年轻代后,将会减小年老代大小.此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8
    设置命令:-Xmn

    4 设置持久代(perm gen)初始值
    默认值:物理内存的1/64。
    设置命令:-XX:PermSize

    5 设置持久代最大值
    默认值:物理内存的1/4。
    设置命令:-XX:MaxPermSize

    6 每个线程的堆栈大小
    默认值:JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K.更具应用的线程所需内存大小进行 调整.在相同物理内存下,减小这个值能生成更多的线程.但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右
    一般小的应用, 如果栈不是很深, 应该是128k够用的 大的应用建议使用256k。这个选项对性能影响比较大,需要严格的测试。(校长)
    和threadstacksize选项解释很类似,官方文档似乎没有解释,在论坛中有这样一句话:””
    -Xss is translated in a VM flag named ThreadStackSize”
    一般设置这个值就可以了。
    设置命令:-Xss

    展开全文
  • 聊聊JVM常用参数设置

    千次阅读 2016-07-30 10:46:28
    通常情况和-Xmx大小设置一样,避免虚拟机频繁自动计算后调整堆大小。 -Xmx3550m,最大堆大小。考虑分代设置堆大小首先通过jstat等工具查看应用程序正常情况下需要堆大小,再根据实际情况设置。新生代-xmn2g,新生代...

    整体考虑堆大小

    -Xms3550m, 初始化堆大小。通常情况和-Xmx大小设置一样,避免虚拟机频繁自动计算后调整堆大小。
    -Xmx3550m,最大堆大小。

    考虑分代设置堆大小

    首先通过jstat等工具查看应用程序正常情况下需要堆大小,再根据实际情况设置。

    新生代

    -xmn2g,新生代大小。Sun官方推荐配置为整个堆的3/8。
    -XX:SurvivorRatio=8。Eden和Survivor的比值。

    老年代

    老年代=整个堆大小-新生代-永久代

    永久代

    -XX:Permsize=512m,设置永久代初始值。
    -XX:MaxPermsize=512m,设置永久代的最大值。
    注:Java8没有永久代说法,它们被称为元空间,-XX:MetaspaceSize=N

    考虑本机直接内存

    -XX:MaxDirectMemorySize=100M。默认与Java堆大最大值(-Xmx)

    考虑虚拟机栈

    每个线程池的堆栈大小。在jdk5以上的版本,每个线程堆栈大小为1m,jdk5以前的版本是每个线程池大小为256k。一般设置256k。
    -Xss256K.

    考虑选择垃圾收集器

    Serial收集器(串行收集器)

    历史最悠久的串行收集器。参数-XX:UseSerialGC。不太常用。

    ParNew和ParOld收集器(并发收集器)

    Serial的多线程版本收集器。

    Parallel Scavenge(吞吐量优先垃圾收集器)

    并行收集器,不同于多线程收集器ParNew,关注吞吐量的收集器。
    -XX:MaxGCPauseMillis=10,设置垃圾收集停顿的最大毫秒数。
    -XX:GCTimeRatio=49,垃圾收集器占比,默认是99。
    -XX:+UseAdaptiveSeizPolicy,GC自适应调节策略。
    -XX:+UseParallelGC,虚拟机Server模式默认值,使用Parallel Scavenge + Serial Old进行内存回收。
    -XX:+UseParallelOldGC, 使用Parallel Scavenge + Parallel Old 进行内存回收。

    CMS

    CMS作为老年代收集器,不能与Parallel Scavenge并存。可能会有内存碎片问题。
    -XX:+UserConcMarkSweepGC,新生代默认用ParNew收集。也可以用-XX:+UserParNewGC强制指定新生代用ParNew收集
    -XX:ParallelGCThreads=4,设置垃圾收集线程数。默认是(CPU数量+3)/4。垃圾收集线程数不少于25%,当CPU数量小于4的时候影响大。
    -XX:CMSInitiatingOccupancyFraction=80,老年代垃圾占比达到这个阈值开始CMS收集,1.6默认是92。设置过高容易导致并发收集失败,会出现SerialOld收集的情况。
    -XX:+UseCMSCompactAtFullCollection,在FULL GC的时候, 对年老代的压缩增加这个参数是个好习惯。可能会影响性能,但是可以消除碎片。
    -XX:CMSFullGCsBeforeCompaction=1,多少次后进行内存压缩。
    -XX:+CMSParallelRemarkEnabled, 为了减少第二次暂停的时间,开启并行remark,降低标记停顿

    G1(Garbage First)

    -XX:+UseG1GC,谨慎使用,需要经过线上测试,还没有被设置为默认垃圾收集器。
    之前的垃圾收集器收集的范围是新生代或者老年代,而G1垃圾收集器收集的范围包括新生代和老年代整个堆。G1将Java堆划为多个大小相同的独立区域(Region),垃圾收集单位是Region。G1垃圾收集适合至少大于4G内存得系统。并且不会产生内存空间碎片。

    其他参数

    -XX:MaxTenuringThreshold=30,晋升老年代的年龄。
    -XX:PretenureSizeThreshold=?,晋升老年代的对象大小。没设置过。

    考虑日志打印

    -verbose:gc,打印GC日志
    -XX:+PrintGC,打印GC基本日志
    -XX:+PrintGCDetails,打印GC详细日志
    -XX:+PrintGCTimeStamps,打印相对时间戳
    -XX:+PrintGCApplicationStoppedTime,打印垃圾回收期间程序暂停的时间
    -XX:+PrintGCApplicationConcurrentTime,打印每次垃圾回收前,程序未中断的执行时间
    -XX:+PrintTenuringDistribution:查看每次minor GC后新的存活周期的阈值
    -XX:+PrintTLAB,查看TLAB空间的使用情况
    -Xloggc:filename,把相关日志信息记录到文件以便分析

    考虑OOM(堆溢出)时保留现场日志

    当抛出OOM时进行heapdump

    -XX:+HeapDumpOnOutOfMemoryError,JVM异常自动生成堆转储
    -XX:HeapDumpPath=,堆转储文件名

    展开全文
  • JVM常用参数含义。

    2020-06-12 10:23:59
    JVM常用参数含义。
    参数含义说明
    -XX:ClCompilerCount=3最大并行编译数如果设置大于1,虽然编译速度会提高,但是同样影响系统稳定性,会增加JVM奔溃的可能
    -XX:InitialHeapSize=100M初始化堆大小简写-Xms100M
    -XX:MaxHeapSize=100M最大堆大小简写-Xmx100M
    -XX:NewSize=20M设置年轻代的大小 
    -XX:MaxNewSize=50M年轻代最大大小 
    -XX:OldSize=50M设置老年代大小 
    -XX:MetaspaceSize=50M设置方法取大小 
    -XX:MaxMetaspaceSize=50M方法区最大大小 
    -XX:UseParallelGC使用UseParallelGC新生代,吞吐量优先
    -XX:UseParallelOldGC使用UseParallelOldGC老年代,吞吐量优先
    -XX:UseConcMarkSweepGC使用CMS老年代,停顿时间优先
    -XX:+UseG1GC使用G1GC新生代,老年代,停顿时间优先
    -XX:NewRatio新老生代的比例比如-XX:Ratio=4,则表示新生代:老年代=1:4,也就是新生代占整个堆内存的1/5
    -XX:SurvivorRatio两个S区和Eden区的比例比如-XX:SurvivorRatio=8,也就是(S0+S1):Eden=2:8,也就是说一个S占整个新生代的1/10
    -XX:+HeapDumpOnOutOfMemoryError启动堆内存溢出打印当JVM堆内存发生溢出时,也就是说OOM,自动生成dump文件
    -XX:HeapDumpPath=heap.hprof指定堆内存溢出打印目录表示在当前目录生成一个heap.hprof文件

    -XX:+PrintGCDetails

    -XX:+PrintGCTimeStamps

    -XX:+PrintGCDateStamps

    Xloggc:$CATALINA_HOME/logs/gc.log

    打印出GC日志可以使用不同的垃圾收集器,对比查看GC情况
    -Xss128k设置每个线程的堆栈大小经验值是3000~5000最佳
    -XX:MaxTenuringThreshold=6提升年老代的最大临界值默认值为15
    -XX:InitiatingHeapOccupancyPercent启动并发GC周期时堆内存使用占比G1之类的垃圾收集器用它来触发并发GC周期,基于整个堆的使用率,而不只是某一代内存使用比,值为0则表示“一直执行GC循环”,默认值为45
    -XX:G1HeapWastePercent允许浪费堆空间的占比默认实10%,如果并发标记可回收的空间小于10%,则不会触发MixedGC。
    -XX:MaxGCPauseMillis=200msG1最大停顿时间暂停时间不能太小,太小的话就会导致出现G1跟不上垃圾产生的速度。最终退化成Full GC。所以对这个参数调优是一个持续的过程,逐步调整到最佳状态。
    -XX:ConcGCThreads=n并发垃圾收集器使用的线程数量默认值随JVM运行的平台不同而不同
    -XX:G1MixedGCLiveThresholdPercent=65混合垃圾回收周期中要包括的旧区域设置占用率阈值默认占用率为65%
    -XX:G1MixedGCCountTarget=8设置标记周期完成后,对存活数据上限为G1MixedGCLiveThresholdPercent的旧区域执行混合垃圾回收的目标次数默认8次混合垃圾回收,混合回收的目标是要控制在此目标次数以内
    -XX:G1OldCSetRegionThresholdPercent=1描述Mixed GC时,Old Region被加入到CSet中默认情况下,G1只把10%的Old Region加入到CSet中
       

     

    展开全文
  • JVM调优常用参数设置

    2019-03-05 09:55:02
    JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server...

    上图:

     

    一、堆大小设置 


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


    典型设置: 

    • 1、java -Xmx3550m -Xms3550m -Xmn2g -Xss128k 

    -Xmx3550m:设置JVM最大可用内存为3550M。 
    -Xms3550m:设置JVM促使内存为3550m。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。 
    -Xmn2g:设置新生代大小为2G。整个JVM内存大小=新生代大小 +老年代大小 + 永久代大小。永久代一般固定大小为64m,所以增大新生代后,将会减小老年代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。 
    -Xss128k:设置每个线程的堆栈大小。JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K。更具应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。 

     

    • 2、java -Xmx3550m -Xms3550m -Xss128k -XX:NewRatio=4 -XX:SurvivorRatio=4 -XX:MaxPermSize=16m -XX:MaxTenuringThreshold=0 

    -XX:NewRatio=4:设置新生代(包括Eden和两个Survivor区)与老年代的比值(除去永久代)。设置为4,则新生代与老年代所占比值为1:4,新生代占整个堆栈的1/5 
    -XX:SurvivorRatio=4:设置新生代中Eden区与Survivor区的大小比值。设置为4,则两个Survivor区与一个Eden区的比值为2:4,一个Survivor区占整个新生代的1/6 
    -XX:MaxPermSize=16m:设置永久带大小为16m。 
    -XX:MaxTenuringThreshold=0:设置垃圾最大年龄。如果设置为0的话,则新生代对象不经过Survivor区,直接进入老年代。对于老年代比较多的应用,可以提高效率。如果将此值设置为一个较大值,则新生代对象会在Survivor区进行多次复制,这样可以增加对象在新生代的存活时间,增加在新生代即被回收的概论。 


    二、回收器选择 

    https://www.cnblogs.com/duke2016/p/6250766.html


    JVM给了三种选择:串行收集器、并行收集器、并发收集器,但是串行收集器只适用于小数据量的情况,所以这里的选择主要针对并行收集器和并发收集器。默认情况下,JDK5.0以前都是使用串行收集器,如果想使用其他收集器需要在启动时加入相应参数。JDK5.0以后,JVM会根据当前系统配置进行判断。 

     

    • 1、吞吐量优先的并行收集器 

    如上文所述,并行收集器主要以到达一定的吞吐量为目标,适用于科学技术和后台处理等。 
    典型配置: 
    java -Xmx3800m -Xms3800m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:ParallelGCThreads=20 
    -XX:+UseParallelGC:选择垃圾收集器为并行收集器。此配置仅对新生代有效。即上述配置下,新生代使用并发收集,而老年代仍旧使用串行收集。-XX:ParallelGCThreads=20:配置并行收集器的线程数,即:同时多少个线程一起进行垃圾回收。此值最好配置与处理器数目相等。 
    java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:ParallelGCThreads=20 -XX:+UseParallelOldGC-XX:+UseParallelOldGC:配置老年代垃圾收集方式为并行收集。JDK6.0支持对老年代并行收集。 
    java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:MaxGCPauseMillis=100-XX:MaxGCPauseMillis=100:设置每次新生代垃圾回收的最长时间,如果无法满足此时间,JVM会自动调整新生代大小,以满足此值。 
    java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseParallelGC -XX:MaxGCPauseMillis=100 -XX:+UseAdaptiveSizePolicy 
    -XX:+UseAdaptiveSizePolicy:设置此选项后,并行收集器会自动选择新生代区大小和相应的Survivor区比例,以达到目标系统规定的最低相应时间或者收集频率等,此值建议使用并行收集器时,一直打开。 

     

    • 2、响应时间优先的并发收集器 

    如上文所述,并发收集器主要是保证系统的响应时间,减少垃圾收集时的停顿时间。适用于应用服务器、电信领域等。 
    典型配置: 
    java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:ParallelGCThreads=20 -XX:+UseConcMarkSweepGC -XX:+UseParNewGC-XX:+UseConcMarkSweepGC:设置老年代为并发收集。测试中配置这个以后,-XX:NewRatio=4的配置失效了,原因不明。所以,此时新生代大小最好用-Xmn设置。 
    -XX:+UseParNewGC:设置新生代为并行收集。可与CMS收集同时使用。JDK5.0以上,JVM会根据系统配置自行设置,所以无需再设置此值。 
    java -Xmx3550m -Xms3550m -Xmn2g -Xss128k -XX:+UseConcMarkSweepGC -XX:CMSFullGCsBeforeCompaction=5 -XX:+UseCMSCompactAtFullCollection 
    -XX:CMSFullGCsBeforeCompaction:由于并发收集器不对内存空间进行压缩、整理,所以运行一段时间以后会产生“碎片”,使得运行效率降低。此值设置运行多少次GC以后对内存空间进行压缩、整理。-XX:+UseCMSCompactAtFullCollection:打开对老年代的压缩。可能会影响性能,但是可以消除碎片。 

    •  3 GC算法:标记清除、复制、标记整理

    https://www.cnblogs.com/sunfie/p/5125283.html 


    三、常见配置汇总 

     

    • 堆设置 

    -Xms:初始堆大小 
    -Xmx:最大堆大小 
    -XX:NewSize=n:设置新生代大小 
    -XX:NewRatio=n:设置新生代和老生代的比值。如:为3,表示新生代与老生代比值为1:3,新生代占整个新生代老生代和的1/4 
    -XX:SurvivorRatio=n:新生代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如:3,表示Eden:Survivor=3:2,一个Survivor区占整个新生代的1/5 
    -XX:MaxPermSize=n:设置永久带大小 

    • 收集器设置 

    -XX:+UseSerialGC:设置串行收集器 
    -XX:+UseParallelGC:设置并行收集器 
    -XX:+UseParalledlOldGC:设置并行老生代收集器 
    -XX:+UseConcMarkSweepGC:设置并发收集器 

    • 垃圾回收统计信息 
    -XX:+PrintGC 输出GC日志
    -XX:+PrintGCDetails 输出GC的详细日志
    -XX:+PrintGCTimeStamps 输出GC的时间戳(以基准时间的形式)
    -XX:+PrintGCDateStamps 输出GC的时间戳(以日期的形式,如 2013-05-04T21:53:59.234+0800)
    -XX:+PrintHeapAtGC 在进行GC的前后打印出堆的信息
    -Xloggc:../logs/gc.log 日志文件的输出路径
    • 并行收集器设置 

    -XX:ParallelGCThreads=n:设置并行收集器收集时使用的CPU数。并行收集线程数。 
    -XX:MaxGCPauseMillis=n:设置并行收集最大暂停时间 
    -XX:GCTimeRatio=n:设置垃圾回收时间占程序运行时间的百分比。公式为1/(1+n) 

    • 并发收集器设置 

    -XX:+CMSIncrementalMode:设置为增量模式。适用于单CPU情况。 
    -XX:ParallelGCThreads=n:设置并发收集器新生代收集方式为并行收集时,使用的CPU数。并行收集线程数。

     

    四、调优总结 

     

    • 1、新生代大小选择 

    1)响应时间优先的应用:尽可能设大,直到接近系统的最低响应时间限制(根据实际情况选择)。在此种情况下,新生代收集发生的频率也是最小的。同时,减少到达老生代的对象。 
    2)吞吐量优先的应用:尽可能的设置大,可能到达Gbit的程度。因为对响应时间没有要求,垃圾收集可以并行进行,一般适合8CPU以上的应用。 

    • 2、老生代大小选择 

    1)响应时间优先的应用:老年代使用并发收集器,所以其大小需要小心设置,一般要考虑并发会话率和会话持续时间等一些参数。如果堆设置小了,可以会造成内存碎片、高回收频率以及应用暂停而使用传统的标记清除方式;如果堆大了,则需要较长的收集时间。最优化的方案,一般需要参考以下数据获得: 
    1、并发垃圾收集信息 
    2、永久带并发收集次数 
    3、传统GC信息 
    4、花在新生代和老年代回收上的时间比例 
    减少新生代和老年代花费的时间,一般会提高应用的效率 
    2)吞吐量优先的应用:一般吞吐量优先的应用都有一个很大的新生代和一个较小的老年代。原因是,这样可以尽可能回收掉大部分短期对象,减少中期的对象,而老年代尽量存放长期存活对象。 

    • 3、较小堆引起的碎片问题 

    因为老年代的并发收集器使用标记、清除算法,所以不会对堆进行压缩。当收集器回收时,他会把相邻的空间进行合并,这样可以分配给较大的对象。但是,当堆空间较小时,运行一段时间以后,就会出现“碎片”,如果并发收集器找不到足够的空间,那么并发收集器将会停止,然后使用传统的标记、清除方式进行回收。如果出现“碎片”,可能需要进行如下配置: 
    -XX:+UseCMSCompactAtFullCollection:使用并发收集器时,开启对老年代的压缩。 
    -XX:CMSFullGCsBeforeCompaction=0:上面配置开启的情况下,这里设置多少次Full GC后,对老年代进行压缩

     

    深入理解JVM-内存模型(jmm)和GC: https://www.jianshu.com/p/76959115d486

     

     

     

    展开全文
  • 转自...utm_medium=toutiao.io&utm_source=toutiao.io JVM常用参数选项 jvm 可配置的参数选项可以参考 Oracle 官方网站给出的相关信息:http://www.oracle.c...
  • linux 下如何设置JVM 常用参数

    万次阅读 2019-08-18 10:11:28
    待完善。
  • JVM常用参数选项介绍

    2019-09-10 18:41:31
    JVM参数选项如何设置 打印设置的XX选项及值 堆、栈、方法区等内存大小设置 OutofMemory相关的选项 垃圾收集器相关选项 GC日志相关选项 其他参数 通过Java代码获取JVM参数 JVM参数选项类型介绍 关于JDK8的...
  • JVM 常见参数设置和分析

    千次阅读 2016-07-16 16:20:15
    我们可以做个简单的小测试,最小堆设置为 5 M,最大堆设置为 20 M,分配内存来看看它们数值的变化。 /** * VM options:-Xmx20m -Xms5m */ public class TestMaxMinHeap { private static final ...
  • 整个JVM内存大小=年轻代大小 + 年老代大小 + 持久代大小。持久代一般固定大小为64m,所以增大年轻代后,将会减小年老代大小。此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8。 3.设置栈的大小 -Xss128k: ...
  • JVM - 应用JVM核心参数推荐设置

    千次阅读 2020-06-22 11:17:14
    JVM-08垃圾收集Garbage Collection【GC常用参数】 JDK版本 = 1.8 核心参数 ‐Xms2048M ‐Xmx2048M ‐Xmn1024M ‐Xss512K ‐XX:MetaspaceSize=256M ‐XX:MaxMetaspaceSize=256M 堆 线程栈 默认1M , 不足的...
  • 常用JVM命令参数详解

    千次阅读 2019-05-20 14:01:42
    表示设置JVM启动内存的最小值为20M,必须以M为单位 (2)-Xmx20M 表示设置JVM启动内存的最大值为20M,必须以M为单位。将-Xmx和-Xms设置为一样可以避免JVM内存自动扩展。大的项目-Xmx和-Xms一般都要设置到10G、20G...
  • JVM 常用调优参数

    2019-02-21 14:32:57
    记录下 JVM 常用的一些调优参数。 // 常见参数 -Xms1024m 初始堆大小 -Xmx1024m 最大堆大小 一般将 Xms 和 Xmx 设置为相同大小,防止堆扩展,影响性能。 -XX:NewSize=n:设置年轻代大小 -XX:NewRatio=n:设置年轻代...
  • JVM常用参数设置 JVM堆空间布局  堆设置  -Xms:初始堆大小,避免垃圾回收之后,JVM调整,一般和Xmx设置一样大  -Xmx:最大堆大小  -Xmn : 年轻代大小,整个堆大小=年轻代大小+年老代大小+持久代大小。...
  • 1、 为什么要进行JVM参数调优 发挥服务器的最大性能,节约运营成本。在调优之前需要对JVM的各数据区的作用及原理进行学习。 2、 导致OOM的常见原因 (1)请求创建一个超大对象,通常是一个大数组。 (2)超出预期的...
  • JVM常用参数总结

    2018-08-09 15:11:20
    本文是对Java8 JVM参数解读的总结 1、堆设置 ##设置初始年轻代堆大小 -Xmn512m ##设置初始的年轻代的大小,该参数等价于-Xmn。 -XX:NewSize=512m 设置最大的年轻代的堆大小。默认自动检测。 -XX:MaxNewSize=512...
  • jvm常用参数

    千次阅读 2018-11-19 20:29:06
    -XX:+PrintCompilation 打印jit代码 -XX:+DoEscapeAnalysis 开启逃逸分析 -XX:+PrintEscapeAnalysis 开启逃逸分析后,可通过此参数查看分析结果
  • JVM常用内存参数配置

    万次阅读 多人点赞 2017-11-08 09:55:22
    一、 常用参数  -Xms   JVM启动时申请的初始Heap值,默认为操作系统物理内存的1/64但小于1G。默认当空余堆内存大于70%时,JVM会减小heap的大小到-Xms指定的大小,可通过-XX:MaxHeapFreeRation=来指定这个比列。...
  • JVM常用参数与工具

    千次阅读 2016-09-23 10:02:38
    原文出处:http://www.cnblogs.com/zhguang/p/java-jvm-gc.html目录参数设置收集器搭配启动内存分配监控工具和方法调优方法调优实例 光说不练假把式,学习Java GC机制的目的是为了实用,也就是为了在JVM出现问题时...
  • 内存管理参数参数以JDK1.8为基础进行整理,目前默认参数大概有660个左右,使用java -XX:+PrintFlagsFinal -version...JVM设置经验 客户端应用 -Xverify:none -XX:+UseG1GC -XX:MinHeapFreeRatio=10 -XX:MaxHeap
  • 一、tomcat Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。...需要把这个两个参数值调大。例如: JAVA_OPTS=’-Xms256m -Xmx512m’ 表示初始化内存为256MB,.
  • 常用jvm参数都在这张图中,参考起来方便,是国外大神整理的

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 93,539
精华内容 37,415
关键字:

jvm常用参数设置