首页 > 其他分享 >常用JVM参数

常用JVM参数

时间:2023-03-19 20:11:42浏览次数:42  
标签:常用 默认 XX GC 内存 JVM 参数 日志

-XX:+PrintCommandLineFlags 打印那些已经被用户或者JVM设置过的详细的xx参数的名称和值。 -XX:+PrintFlagsInitial 打印所有JVM参数启动的初始值 -XX:+PrintFlagsFinal 打印所有JVM参数的最终值 -Xms3000m -Xmx3000m JVM初始分配的内存由-Xms 指定,默认是物理内存的1/64;JVM最 大分配的内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时, JVM会减少堆直到-Xms的最小限制。因此服务器一般设置-Xms、-Xmx相等以避免在每次GC 后JVM调整堆的大小。 -Xss256k 每个线程的Stack大小 -XX:MetaspaceSize=100m 元空间初始化内存大小 -XX:MaxMetaspaceSize=100m 元空间最大内存值 –XX:NewRatio=1老年代与新生代的比例,默认2 -XX:SurvivorRatio=8 新生代Eden区和from区的比例,默认8 -XX:ErrorFile=/export/Logs/server1/java_error_%p.log 设置JVM异常时日志输出路径 -XX:+HeapDumpOnOutOfMemoryError 发生OOM(OutOfMemoryError)时将堆信息dump -XX:HeapDumpPath=d://a.dump指定dump文件的保存路径 -Xloggc:/export/Logs/server1/gc.log 设置GC日志文件输出路径 -XX:+PrintGCDetails 打印详细GC日志 -XX:+PrintGCDateStamps 输出GC的时间戳(以日期的形式,如 2013-05-04T21:53:59.234+0800) -XX:+UseGCLogFileRotation 开启GC日志文件分割 -XX:NumberOfGCLogFiles=14 GC日志最多分割几个文件,超过之后从头文件开始写 -XX:GCLogFileSize=100M 每个GC日志文件上限大小,超过就触发分割 -Djava.awt.headless=true java做图形处理需要加 -Dsun.net.client.defaultConnectTimeout=60000 建立与主机连接超时时间 -Dsun.net.client.defaultReadTimeout=60000 调用http请求超过60000ms未响应,会抛出异常信息ReadTimeout -Djmagick.systemclassloader=no jmagick在tomcat运行时需设置 -Dnetworkaddress.cache.ttl=300 设置解析成功的域名记录JVM中缓存的有效时间 -Dsun.net.inetaddr.ttl=300 未读取到Dnetworkaddress.cache.ttl,则会读取当前参数作为缓存 ttl.设置解析成功的域名记录JVM中缓存的有效时间 -XX:+DisableExplicitGC 禁止代码中显示调用GC,代码中调用System.gc()没有任何效果 -XX:+UseConcMarkSweepGC 并发标记清除(CMS)收集器,CMS收集器也被称为短暂停顿并发收集器; -XX:+UseParNewGC 新生代采用parallel并行收集器 -XX:+CMSParallelRemarkEnabled 降低标记停顿 -XX:+UseCMSCompactAtFullCollection 使用并发收集器时,开启对年老代的压缩. -XX:CMSFullGCsBeforeCompaction=0 设置经过多少次不压缩的FGC进行一次内存压缩 -XX:+CMSClassUnloadingEnabled 年老代启用CMS,但默认是不会回收永久代(Perm)的。此处对Perm区启用类回收,防止Perm区内存满。 -XX:LargePageSizeInBytes=128M 指定Java heap的分页页面大小 -XX:+UseFastAccessorMethods 原始类型的快速优化 -XX:+UseCMSInitiatingOccupancyOnly 使用手动定义的初始化定义开始CMS收集 -XX:CMSInitiatingOccupancyFraction=70 使用cms作为垃圾回收使用70%后开始CMS收集; -XX:SoftRefLRUPolicyMSPerMB=0 每1M空闲空间可保持的SoftReference对象的生存时长(单位是ms毫秒),默认是1000ms,如果被设置为0,就会导致软引用对象马上被回收掉  

标签:常用,默认,XX,GC,内存,JVM,参数,日志
From: https://www.cnblogs.com/zhengbiyu/p/17234086.html

相关文章

  • #yyds干货盘点#工作中常用的git命令
    Git配置了解版本控制什么是版本控制?我真的需要吗?版本控制是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。什么是分布式版本控制系统分布式版本控制系统(......
  • PDF 压缩常用方法比较
    日常工作中,如果是一份PDF文档传输,时间长一点没什么问题,但如果需要传输几十个文档或者几百个就会花费很多时间,而对多个PDF文档压缩,体积变小了,传输的效率会大大提高,节省时......
  • 嵌入式开发中常用的条件编译
    条件编译命令常见形式:1#ifdef标识符2程序段13#else4程序段25#endif作用:当标识符被#define定义过,则对程序段1进行编译,否则编译程序段2。常用形式2:#ifndef......
  • 外界参数控制多线程队列进行与否
    业务场景,最近遇到个需求,就是通过点击开始/继续要控制任务进度,刚开始想到了线程wait,notify本人是个比较懒得人,一想到要写那么多代码空值,要等待,唤醒,睡眠啥的就觉得麻烦,出......
  • 前端开发常用工具
    HtmlEmmethtml代码快速生成工具。占位字符生成lorem敲tab键即可自动生成一段占位文本图片占位符生成网址/图片宽度x图片高度支持的网址:http://placeholder......
  • 10 常用容器
    这些容器的泛型中全部只能使用对象,不能使用基本数据类型。10.0CollectionFrameworkjava.util.Collection集合中不能存放基本类型数据,而只能存放对象的引用。Collec......
  • 分布式流处理组件-优化篇:Producer生产调优之核心参数
    ......
  • JVM——垃圾回收器
    3垃圾回收器三种垃圾回收器3.1串行3.2吞吐量优先ratio默认值为99较难达到,一般设置为193.3响应时间优先3.4G1jdk1.8不是默认开启的,需要用-XX:+UseG1GC来启......
  • 熟悉JVM吗?为什么新生代内存需要有两个Survivor区?
    在JVM的新生代内存中,为什么除了Eden区,还要设置两个Survivor区?为什么要有Survivor区如果没有Survivor,Eden区每进行一次MinorGC,存活的对象就会被送到老年代。老年代很快被......
  • 111python之不定长参数
    Python中的不定长传参指的是函数参数的个数不是固定的,这使得函数可以接受任意数量的参数。有两种方法来实现不定长传参:使用*args和**kwargs参数。*args:用于传递任意数......