1. 杂项java
-classpath your_dir : 指定目录,jvm将会默认加载该目录下的类apache
-Djava.library.path=library_dir : 指定java的JNI相关文件dll的位置tomcat
-server : jvm将会以server模式启动应用,启动较慢,性能较好服务器
-client : jvm将会以client模式启动应用,启动较快,性能较差session
-Dsun.rmi.transport.tcp.responseTimeout=20000 : 设定RMI请求超时时间并发
-Dcom.sun.management.jmxremote : 支持远程经过jmx的方式监控应用资源less
-Dcom.sun.management.jmxremote.port=9999 : 远程RMI使用JMX时的监听端口jvm
-Dcom.sun.management.jmxremote.ssl=false : 远程RMI使用JMX时不使用SSL协议tcp
-Dcom.sun.management.jmxremote.authenticate=false : 远程RMI使用JMX时不须要验证信息性能
-Djava.util.logging.config.file=properties_dir: 指定java自带的日志系统的配置文件
-Djava.util.logging.manager=manager_package: 指定自带的日志管理系统的管理器
-Dsun.rmi.dgc.client.gcInterval=3600000 : jvm默认会每小时调用一次system.gc(),经过该参数调整client模式下定时触发gc的时间间隔
-Dsun.rmi.dgc.server.gcInterval=3600000 : 同上,server模式时的参数
-Djava.endorsed.dirs=your_dir : 指定目录,在该目录下的libraries将会覆盖系统提供的libraries,部分系统API没法覆盖
-Djava.awt.headless=true : 代表服务器在缺乏键盘,鼠标,显示器等外设的状况下运做,涉及到图片处理相关功能的服务器通常须要增长该参数
-Dorg.apache.catalina.SESSION_COOKIE_NAME : 指定tomcat识别session的key,默认为jsessionid,防止多应用下的session冲突
2. gc日志相关
-verbose:gc : 输出jvm的gc的详细状况
-XX:+PrintGCDetails : 记录GC运行时的详细数据信息,包括新生占用的内存大小及消耗时间
-XX:+PrintGCTimeStamps : 打印GC的时间戳
-Xloggc:filename : 指定GC数据的存储文件
-XX:+UseGCLogFileRotation : 启用GC日志文件的自动转储
-XX:GCLogFileSize=1m : 控制GC日志文件的大小
3. 堆相关
-Xms2g : 设置Jvm堆的初始大小为2g
-Xmx2g : 设置jvm堆的最大值为2g
-Xmn1g : 设置年轻代大小为1g
-Xss512k : 设置jvm线程栈大小为512k,默认1M
-XX:PermSize=128m : 设定jvm持久代的初始值为128m,1.8后持久代被删除
-XX:MaxPermSize=128m : 设置持久代的最大值为128m,1.8后持久代被删除
-XX:NewRatio=4 : 设置老年代和年轻代的比值为4 : 1,公式 X : 1
-XX:SurvivorRatio=4 : 设置年轻代中两个 s 区与 e 区的比值,4表明两个 s 区和 e 区大小比值为 1 : 1 : 4,公式 1 : 1 : X
-XX:MaxTenuringThreshold=0 : 设置对象在年轻代中的年龄,值为0时,对象不通过 s 区直接进入老年代,该参数只有在串行GC时才有效
-XX:+DisableExplicitGC : 禁止代码显示调用system.gc()方法,使用该参数须要严格测试,特别是使用NIO的状况下,容易形成OOM,慎用
-XX:+CollectGen0First : 执行FULL GC以前,是否先YGC,默认false
-XX:PretenureSizeThreshold=1024 : 对象超过必定大小以后,直接分配在老年代,单位:字节
-XX:+UseParallelGC : 使用并行垃圾收集器
-XX:+UseParNewGC : 设置年轻代为并行收集
-XX:+UseParallelOldGC : 设置老年代为并行收集
-XX:ParallelGCThreads=123 : 并行收集器的线程数
-XX:-UseConcMarkSweepGC : 使用并发标志扫描收集器
-XX:-UseSerialGC : 使用串行垃圾收集器