侧边栏壁纸
博主头像
晓果冻博主等级

一个热爱生活的95后精神小伙

  • 累计撰写 131 篇文章
  • 累计创建 15 个标签
  • 累计收到 67 条评论

目 录CONTENT

文章目录

jvm参数学习

晓果冻
2022-09-25 / 0 评论 / 0 点赞 / 470 阅读 / 604 字
温馨提示:
本文最后更新于 2022-09-26,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
  • -noverify:关闭类验证
  • -server:JVM Server模式与client模式启动,最主要的差别在于:-Server模式启动时,速度较慢,但是一旦运行起来后,性能将会有很大的提升。
  • -Xmx12G -Xms12G:堆内存最大最小值
  • -XX:+ExplicitGCInvokesConcurrent:调用System.gc()时,不是进行fullgc,而是并发的CMS GC。
  • -XX:+UseG1GC:使用G1垃圾回收器
  • -XX:MaxGCPauseMillis=200:设置GC暂停等待时间,单位为毫秒,不要设置过低
  • -XX:MaxMetaspaceSize=512M:元空间最大内存大小
  • -XX:MetaspaceSize=512M:元空间大小
  • -XX:LargePageSizeInBytes=128M:内存页的大小不可设置过大, 会影响Perm的大小
  • XX:+UseFastAccessorMethods:原始类型的快速优化(get,set 方法转成本地代码(对于jvm来说是冗余代码,jvm将进行优化))
  • -XX:SoftRefLRUPolicyMSPerMB=0:表示0忍耐度,所有的软引用对象都要尽快的被释放。原文:https://blog.csdn.net/weixin_38106322/article/details/109166228
  • -XX:+PrintClassHistogram:按下Ctrl+Break后,打印类的信息
  • -XX:+PrintHeapAtGC:每次GC都打印信息
  • -XX:+PrintGCDetails:打印GC详细信息。原文::https://blog.csdn.net/u012745499/article/details/108591198
  • -XX:+PrintGCDateStamps、-XX:+PrintGCTimeStamps:输出GC的时间戳(以日期的形式,如 2013-05-04T21:53:59.234+0800)
  • Xloggc:GC日志存放位置
  • -XX:+HeapDumpOnOutOfMemoryError:当堆内存空间溢出时输出堆的内存快照
  • -XX:HeapDumpPath:dump产生路径
  • -XX:OnOutOfMemoryError:发生内存溢出调用的脚本
  • -Dcom.sun.management.jmxremote.port=26666:jmx远程端口26666
  • -Dcom.sun.management.jmxremote.ssl=false:关闭ssl
  • -Dcom.sun.management.jmxremote.authenticate=false:不需要鉴权
  • -javaagent:嵌入的jar包,端口及host
#!/bin/sh
JAVA_HOME=/home/app/jdk1.8.0_101
APP_HOME=/home/app/service
APP_CLASSPATH=$APP_HOME/app
APP_CLASSPATH=$APP_CLASSPATH:` find $APP_HOME/lib -name *.jar|tr '\n' ':'`
export JAVA_HOME APP_HOME APP_CLASSPATH
CURRENT_DATE=`date +%Y%m%d%H%M%S`
$JAVA_HOME/bin/java -noverify -server -Xmx12G -Xms12G -Xss256K -XX:+ExplicitGCInvokesConcurrent -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:MaxMetaspaceSize=512M -XX:MetaspaceSize=512M -XX:LargePageSizeInBytes=128M -XX:+UseFastAccessorMethods -XX:SoftRefLRUPolicyMSPerMB=0 -XX:+PrintClassHistogram -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+PrintHeapAtGC -Xloggc:$APP_HOME/logs/gc_$CURRENT_DATE.log -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$APP_HOME/temp/ -XX:OnOutOfMemoryError=$APP_HOME/restart.sh -Dcom.sun.management.jmxremote.port=26666 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -javaagent:$APP_HOME/jolokia/jolokia-jvm-1.6.2-agent.jar=port=8700,host=0.0.0.0 -jar $APP_HOME/app/*.jar --profile=prod  >$APP_HOME/logs/startup.log 2>&1 &
0

评论区