zoukankan      html  css  js  c++  java
  • JVM 参数

    -Xms4096m //初始堆大小

    -Xmx4096m //最大堆大小

    -Xmn1536m //新生代大小 eden + from + to

    -Xss512K //线程大小,默认1M

    -XX:NewRatio=2 //新生代和老年代的比例

    -XX:MaxPermSize=64m //持久代最大值

    -XX:PermSize=16m //持久代初始值

    -XX:SurvivorRatio=8 // eden 区和survivor区的比例

    -verbose:gc

    -Xloggc:gc.log //输出gc日志文件

    -XX:+UseGCLogFileRotation //使用log文件循环输出

    -XX:NumberOfGCLogFiles=1 //循环输出文件数量

    -XX:GCLogFileSize=8k //日志文件大小限制

    -XX:+PrintGCDateStamps //gc日志打印时间

    -XX:+PrintTenuringDistribution //查看每次minor GC后新的存活周期的阈值

    -XX:+PrintGCDetails //输出gc明细

    -XX:+PrintGCApplicationStoppedTime //输出gc造成应用停顿的时间

    -XX:+PrintReferenceGC //输出堆内对象引用收集时间

    -XX:+PrintHeapAtGC //输出gc前后堆占用情况

    -XX:+UseParallelGC //年轻代并行GC,标记-清除

    -XX:+UseParallelOldGC //老年代并行GC,标记-清除

    -XX:ParallelGCThreads=23 //并行GC线程数, cpu<=8?cpu:5*cpu/8+3

    -XX:+UseAdaptiveSizePolicy //默认,自动调整年轻代各区大小及晋升年龄

    -XX:MaxGCPauseMillis=15 //每次GC最大停顿时间,单位为毫秒

    -XX:+UseParNewGC //Serial多线程版

    -XX:+UseConcMarkSweepGC //CMS old gc

    -XX:+UseCMSCompactAtFullCollection //FullGC后进行内存碎片整理压缩

    -XX:CMSFullGCsBeforeCompaction=n //n次FullGC后执行内存整理

    -XX:+CMSParallelRemarkEnabled //启用并行重新标记,只适用ParNewGC

    -XX:CMSInitiatingOccupancyFraction=80 //cms作为垃圾回收是,回收比例80%

    -XX:ParallelGCThreads=23 //并行GC线程数,cpu<=8?cpu:5*cpu/8+3

    -XX:-UseSerialGC //默认不启用,client使用时启用

    -XX:+UseG1GC //启用G1收集器

    -XX:-UseAdaptiveSizePolicy //默认,不自动调整各区大小及晋升年龄

    -XX:PretenureSizeThreshold=2097152 //直接晋升到老年代的对象大小

    -XX:MaxTenuringThreshold=15(default) //晋升到老年代的对象年龄,PSGen无效

    -XX:-DisableExplicitGC //禁止在运行期显式地调用?System.gc()

    -XX:+HeapDumpOnOutOfMemoryError //在OOM时输出堆内存快照

    -XX:HeapDumpPath=./java_pid.hprof //堆内存快照的存储路径

    -XX:+CMSScavengeBeforeRemark //执行CMS重新标记之前,尝试执行一此MinorGC

    -XX:+CMSPermGenSweepingEnabled //开启永久代的并发垃圾收集

    -XX:+UseCompressedClassPointers和-XX:+UseCompressedOops开启Compressed Class的功能后,会在Metaspace中开辟出一块新的空间(Compressed Class Space)

    -XX:MetaspaceSize=N :这个参数是初始化的Metaspace大小,该值越大触发Metaspace GC的时机就越晚。随着GC的到来,虚拟机会根据实际情况调控Metaspace的大小,
    可能增加上线也可能降低。在默认情况下,这个值大小根据不同的平台在12M到20M浮动。

    使用java -XX:+PrintFlagsInitial命令查看本机的初始化参数,-XX:Metaspacesize为21810376B(大约20.8M)。

    -XX:MaxMetaspaceSize=N :这个参数用于限制Metaspace增长的上限,防止因为某些情况导致Metaspace无限的使用本地内存,影响到其他程序。默认无上限。

    -XX:MinMetaspaceFreeRatio=N :当进行过Metaspace GC之后,会计算当前Metaspace的空闲空间比,如果空闲比小于这个参数,那么虚拟机将增长Metaspace的大小。在本机该参数的默认值为40,也就是40%。设置该参数可以控制Metaspace的增长的速度,太小的值会导致Metaspace增长的缓慢,Metaspace的使用逐渐趋于饱和,可能会影响之后类的加载。而太大的值会导致Metaspace增长的过快,浪费内存。

    -XX:MaxMetasaceFreeRatio=N :当进行过Metaspace GC之后, 会计算当前Metaspace的空闲空间比,如果空闲比大于这个参数,那么虚拟机会释放Metaspace的部分空间。在本机该参数的默认值为70,也就是70%。

    -XX:MaxMetaspaceExpansion=N :Metaspace增长时的最大幅度。在本机上该参数的默认值为5452592B(大约为5MB)。

    -XX:MinMetaspaceExpansion=N :Metaspace增长时的最小幅度。在本机上该参数的默认值为340784B(大约330KB为)。

    jvisualvm监控 ,java启动参数

    -Djava.rmi.server.hostname=114.67.171.251 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8777 -Dcom.sun.management.jmxremote.rmi.port=8777 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

    —转载请注明出处
  • 相关阅读:
    shell常用的系统变量
    Git的使用--如何将本地项目上传到Github
    vmware + centos 7安装vmtools时提示The path "" is not a valid path to the xxx kernel header
    SQL查询表中的有那些索引
    SQL merge into 表合并
    SqlServer coalesce函数
    SQL 大数据查询如何进行优化?
    为什么GOF的23种设计模式里面没有MVC?
    Javascript闭包
    AngularJS概述&指令
  • 原文地址:https://www.cnblogs.com/landiss/p/14167899.html
Copyright © 2011-2022 走看看