Jvm常见参数及配置

Jvm常见参数
  • -Xms2048m,初始堆大小,建议<物理内存的1/4,默认值为物理内存的1/64(1/64太小,建议1/4)

  • -Xmx2048m,最大堆大小,建议与-Xms保持一致,默认值为物理内存的1/4
    (为什么保持一致:初始值1G,最大2G,当内存用了1G的时候,还没到使用上限,可以进行扩容,扩容会进行内存的重新分配、计算,造成扩容期间性能下降)

  • -Xmn512m,新生代大小,建议不超过堆内存的1/2,通常在 1/4 - 1/2 之间 (老年代大小为:最大堆大小 - 新生代大小)

  • -Xss1024k,线程堆栈大小,建议1024k (建议512 - 1024k)

  • -XX:PermSize=256m,永久代初始值,默认值为物理内存的1/64 (够用即可,JDK8中已移除,用Metaspace代替)

  • -XX:MaxPermSize=256m,永久代最大值,默认值为物理内存的1/4 (够用即可,JDK8中已移除,用Metaspace代替)

  • -XX:MetaspaceSize=64m 配置元空间初始值和最大值参数

  • -XX:MaxMetaspaceSize=64m 配置元空间初始值和最大值参数

  • -XX:SurvivorRatio=8:年轻带中Eden区和Survivor区的比例,默认为8:1,即Eden(8),From Space(1),ToSpace(1)

  • -XX:+UseConcMarkSweepGC:开启CMS垃圾回收器

设置JVM参数

修改 apache-tomcat-pinter/bin/catalina.sh

Linxu 系统:apache-tomcat-pinter/bin/catalina.sh

JAVA_OPTS="-Xms256m -Xmx256m -Xmn128m -Xss512k -XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=64m -XX:+UseConcMarkSweepGC -Dcom.sun.management.jmxremote.port=8080 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=127.0.0.1"

Windwos系统:apache-tomcat-pinter/bin/catalina.bat

set "JAVA_OPTS=-Xms256m -Xmx256m -Xmn128m -Xss512k -XX:MetaspaceSize=64m -XX:MaxMetaspaceSize=64m -XX:+UseConcMarkSweepGC -Dcom.sun.management.jmxremote.port=8080 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=127.0.0.1"

控制台输入 jvisualvm 打开 jmv界面

posted @   DeyouKong  阅读(1346)  评论(0编辑  收藏  举报
编辑推荐:
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示