博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jvm启动参数整理
阅读量:6662 次
发布时间:2019-06-25

本文共 2118 字,大约阅读时间需要 7 分钟。

hot3.png

1. 杂项

    -classpath your_dir : 指定目录,jvm将会默认加载该目录下的类

    -Djava.library.path=library_dir : 指定java的JNI相关文件dll的位置

    -server : jvm将会以server模式启动应用,启动较慢,性能较好

    -client : jvm将会以client模式启动应用,启动较快,性能较差

    -Dsun.rmi.transport.tcp.responseTimeout=20000 : 设定RMI请求超时时间

    -Dcom.sun.management.jmxremote : 支持远程通过jmx的方式监控应用资源

    -Dcom.sun.management.jmxremote.port=9999 : 远程RMI使用JMX时的监听端口

    -Dcom.sun.management.jmxremote.ssl=false : 远程RMI使用JMX时不使用SSL协议

    -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 : 使用串行垃圾收集器

   

    

  

    

 

转载于:https://my.oschina.net/GameKing/blog/814014

你可能感兴趣的文章
浅议极大似然估计(MLE)背后的思想原理
查看>>
IDEA查看源码时提示:Library source does not match the bytecode for class的问题分析
查看>>
insert /*+append*/为什么会提高性能
查看>>
Zabbix监控之迁移zabbix server
查看>>
【Tips】【UE】总结自己常用的UltraEdit使用技巧
查看>>
spring-boot (四) springboot+mybatis多数据源最简解决方案
查看>>
架构学习笔记
查看>>
【GRPC】GRPC-负载均衡
查看>>
centos6.8 安装Python2.7后, yum出现“No module named yum”错误
查看>>
Servlet中文乱码原因 解决 Get 和 Post 和客户端
查看>>
074——VUE中vuex之模块化modules开发实例
查看>>
编程思想:面向对象与面向过程
查看>>
java和c/c++通过JNI相互调用
查看>>
Android端生成META-INF信息文件的Gradle插件 RapidMetaInfPlugin
查看>>
J2SE基础:10集合2
查看>>
80386的分段机制、分页机制和物理地址的形成
查看>>
MySQL5.7 GTID在线开启与关闭【转】
查看>>
记录:50多行程序中找出多写的一个字母e
查看>>
C# 时间与时间戳互转 13位
查看>>
CentOS7系统64位下搭建Python3.6环境及相关细节工具部署文章收集
查看>>