转载自: SpringBoot JVM参数调优

各种参数

参数名称 含义 默认值 说明
-Xms 初始堆大小 物理内存的1/64(<1GB) 默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制.
-Xmx 最大堆大小 物理内存的1/4(<1GB) 默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会减少堆直到 -Xms的最小限制
-Xmn 年轻代大小(1.4or lator) 注意:此处的大小是(eden+ 2 survivor space).与jmap -heap中显示的New gen是不同的。 整个堆大小=年轻代大小 + 年老代大小 + 持久代大小. 增大年轻代后,将会减小年老代大小.此值对系统性能影响较大,Sun官方推荐配置为整个堆的3/8
-XX:NewSize 设置年轻代大小(for 1.3/1.4)
-XX:MaxNewSize 年轻代最大值(for 1.3/1.4)
-XX:PermSize 设置持久代(perm gen)初始值 物理内存的1/64
-XX:MaxPermSize 设置持久代最大值 物理内存的1/4
-Xss 每个线程的堆栈大小 JDK5.0以后每个线程堆栈大小为1M,以前每个线程堆栈大小为256K.更具应用的线程所需内存大小进行 调整.在相同物理内存下,减小这个值能生成更多的线程.但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右 一般小的应用, 如果栈不是很深, 应该是128k够用的 大的应用建议使用256k。这个选项对性能影响比较大,需要严格的测试。(校长) 和threadstacksize选项解释很类似,官方文档似乎没有解释,在论坛中有这样一句话:”” -Xss is translated in a VM flag named ThreadStackSize” 一般设置这个值就可以了。
-XX:NewRatio 年轻代(包括Eden和两个Survivor区)与年老代的比值(除去持久代) -XX:NewRatio=4表示年轻代与年老代所占比值为1:4,年轻代占整个堆栈的1/5 Xms=Xmx并且设置了Xmn的情况下,该参数不需要进行设置。
-XX:SurvivorRatio Eden区与Survivor区的大小比值 设置为8,则两个Survivor区与一个Eden区的比值为2:8,一个Survivor区占整个年轻代的1/10
-XX:LargePageSizeInBytes 内存页的大小不可设置过大,会影响Perm的大小 =128m
-XX:+UseFastAccessorMethods 原始类型的快速优化
-XX:+DisableExplicitGC 关闭System.gc() 这个参数需要严格的测试
-XX:MaxTenuringThreshold 垃圾最大年龄 如果设置为0的话,则年轻代对象不经过Survivor区,直接进入年老代. 对于年老代比较多的应用,可以提高效率.如果将此值设置为一个较大值,则年轻代对象会在Survivor区进行多次复制,这样可以增加对象再年轻代的存活 时间,增加在年轻代即被回收的概率 该参数只有在串行GC时才有效.
-XX:+AggressiveOpts 加快编译
-XX:+UseBiasedLocking 锁机制的性能改善
-Xnoclassgc 禁用垃圾回收
-XX:SoftRefLRUPolicyMSPerMB 每兆堆空闲空间中SoftReference的存活时间 1s softly reachable objects will remain alive for some amount of time after the last time they were referenced. The default value is one second of lifetime per free megabyte in the heap
-XX:PretenureSizeThreshold 对象超过多大是直接在旧生代分配 0 单位字节 新生代采用Parallel Scavenge GC时无效 另一种直接在旧生代分配的情况是大的数组对象,且数组中无外部引用对象.
-XX:TLABWasteTargetPercent TLAB占eden区的百分比 1%
-XX:+CollectGen0First FullGC时是否先YGC false

springboot jvm参数相关推荐

  1. SpringBoot笔记:SpringBoot启动参数配置

    文章目录 目的 测试代码 配置文件配置 获取自定义参数 项目打包发布 修改启动配置 方式一:系统变量 方式二:命令行参数 springboot启动参数解释 目的 1.熟悉springboot多环境配置 ...

  2. Springboot 接受参数,控制台乱码

    Springboot 接受参数,控制台乱码 在pom.xml中的build标签下加入一下代码即可: <build><blugins><plugin><!--防 ...

  3. SpringBoot配置参数

    SpringBoot配置参数 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 3 ...

  4. Tomcat 调优及 JVM 参数优化

    Tomcat 本身与 JVM 优化 Tomcat:调整Server.xml JVM:bat启动服务方式的话修改catalina.bat 服务式启动的话参考:http://www.cnblogs.com ...

  5. CMS:听我的,生产环境上要这样配置JVM参数

    哪怕JDK16 GA已经发布很久了,但是,可以肯定的是,绝大多数的生产环境依然运行的是JDK8.此处必须来一句:JDK8 yyds.既然运行的是JDK8,那么生产环境的垃圾回收器基本上就是下面3种啦: ...

  6. 只需两步,Tomcat JVM 参数性能迅速调到最优!

    作者:Java架构师历程 来源:cloud.tencent.com/developer/article/1346964 Tomcat性能调优 找到Tomcat根目录下的conf目录,修改server. ...

  7. JVM系列三:JVM参数设置、分析

    2019独角兽企业重金招聘Python工程师标准>>> 不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM.GC的参数,可以极大 ...

  8. JVM参数调优,无停滞实践

    参考:http://www.cjsdn.net/post/print?bid=62&id=198084 JVM参数调优是个很头痛的问题,设置的不好,JVM不断执行Full GC,导致整个系统变 ...

  9. JVM 参数及各部分含义(转)

    转自:https://www.jianshu.com/p/1c6b5c2e95f9 JVM参数分类 JVM参数分为标准参数和非标准参数: 标准参数: "-"开头的参数,如-clie ...

  10. JVM参数设置和分析

    转自:http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html 不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断 ...

最新文章

  1. B - Modular Inverse
  2. s7edge 无法连接计算机,s7-200,CPU224CN无法连接到电脑-工业支持中心-西门子中国...
  3. Java验证码图片生成实现
  4. 重心法求中心matlab,两个中转站选址问题(重心法,metlab,spss)程序.ppt
  5. 【正一专栏】阿根廷和葡萄牙都进不了世界杯可能吗?
  6. ORA-01045: user lacks CREATE SESSION privilege; logon denied
  7. 【jzoj2173】【DFS】无根树
  8. 产品全生命周期的产品结构和配置管理构架
  9. uniapp开发微信小程序-软考刷题小程序
  10. 笔记本跑python 90多度会坏吗_cpu温度多高才安全?90度会烧坏吗??
  11. 振荡中医学习感悟——姥姥的咳嗽
  12. 【IDEA】IDEA常用配置
  13. Webpack的加载器
  14. 村上春树(作品)年谱
  15. 智能骨科图像方向,按照期刊进行的文献整理
  16. Qt编写可视化大屏电子看板系统25-模块3设备监控
  17. 徒步爬14楼、吃饭间隙跑3单、月薪过万...揭秘青岛外卖小哥的工作日常
  18. 基于springboot代驾网站毕业设计源码281031
  19. 文件包含漏洞1 | iwebsec
  20. ubuntu上安装QT

热门文章

  1. Linux创建内核线程kthread_create的用法介绍
  2. python3使用requests和requests_toolbelt上传文件
  3. bzoj 3680: 吊打XXX
  4. 12-畅通工程续(多种方法求最短路径)
  5. 开源协议的几种类型认识
  6. iOS面试题大全66-85
  7. 游戏开发之类的构造函数和析构函数(C++基础)
  8. Kubernetes详解(十)——Pod对象高级控制命令
  9. NYOJ--975--关于521
  10. [转]在Windows server 2012上部署DPM 2012 SP1 RTM之先决条件准备