JVM技术之旅-JVM基本常用设置参数(1)

简介: JVM技术之旅-JVM基本常用设置参数(1)

堆设置的常用参数如下:


  • -Xms :初始堆大小


  • -Xmx :最大堆大小,当Xms和Xmx设置相同时,堆就无法进行自动扩展


  • -XX:NewSize=n/-Xmn :设置年轻代大小


  • -XX:NewRatio=n:设置年轻代和年老代的比值。如:为 3,表示年轻代与年老代比值为1:3,年轻代占整个年轻代年老代和的1/4


  • -XX:SurvivorRatio=n :年轻代中Eden区与Survivor区的比值。注意Survivor区有两个。如:XX:SurvivorRatio=3,表示Eden区的大小是一个Survivor区的三倍,但Survivor区有两个,那么Eden:Survivor=3:2,一个Survivor区占整个年轻代的1/5。


  • -XX:MaxPermSize/-XX:MetaspaceSize=n :设置方法区大小




收集器设置


  • -XX:+UseSerialGC :设置串行收集器(serial+serialOld)


  • -XX:+UseParallelGC :设置并行收集器(Parnew+Serialold)


  • -XX:+UseParalledlOldGC :设置并行年老代收集器(parScavenge+parold)


  • -XX:+UseConcMarkSweepGC :设置并发收集器(Parnew+Cms)



垃圾回收统计信息



  • -XX:+PrintHeapAtGC GC的heap详情


  • -XX:+PrintGCDetails  GC详情


  • -XX:+PrintGCTimeStamps  打印GC时间信息


  • -XX:+PrintTenuringDistribution    打印年龄信息等


  • -XX:+HandlePromotionFailure   老年代分配担保(true  or false)




并行收集器设置


  • -XX:ParallelGCThreads=n :设置并行收集器收集时使用的CPU数。并行收集线程数。

  • -XX:MaxGCPauseMillis=n :设置并行收集最大暂停时间

  • -XX:GCTimeRatio=n :设置垃圾回收时间占程序运行时间的百分比。公式为1/(1+n)





并发收集器设置


  • -XX:+CMSIncrementalMode :设置为增量模式。适用于单CPU情况。


  • -XX:ParallelGCThreads=n :设置并发收集器年轻代收集方式为并行收集时,使用的CPU数。并行收集线程数




相关文章
|
19天前
|
Java 应用服务中间件 Linux
Tomcat 调优及 JVM 参数优化
Tomcat 调优及 JVM 参数优化
|
1月前
|
Java 开发工具
JVM参数太多?一网打尽常用JVM参数!
JVM参数太多?一网打尽常用JVM参数!
|
26天前
|
存储 安全 Java
深入探究Java虚拟机(JVM)的技术细节
深入探究Java虚拟机(JVM)的技术细节
|
1月前
|
监控 Java 调度
探秘Java虚拟机(JVM)性能调优:技术要点与实战策略
【4月更文挑战第17天】本文探讨了JVM性能调优的关键技术,包括内存模型调优(关注堆内存和垃圾回收),选择和优化垃圾收集器,利用JVM诊断工具进行问题定位,以及实战调优案例。强调了开发者应理解JVM原理,善用工具,结合业务场景进行调优,以应对高并发和大数据量的挑战。调优是持续的过程,能提升系统稳定性和效率。
|
1月前
|
Java
jvm配置参数,查看大对象直接分配到老年代
jvm配置参数,查看大对象直接分配到老年代
|
1月前
|
存储 监控 安全
21个 JVM 技术点详解(附面试解答)
以上V哥给大家详细介绍了 JVM 中涉及的21个点,全网还没有针对 JVM 这样来梳理的内容,希望对你深入了解 JVM 有一定帮助,另,V 哥给大家推荐一本《深入 JVM 虚拟机》的书籍,可以作为工具书使用,高阶的 Java 程序员几乎人手一本。今天的分享就到这里,任何疑问欢迎与 V 哥一起交流,畅谈 Java 人生。
|
1月前
|
人工智能 运维 Java
Serverless 应用引擎产品使用之在阿里云函数计算中设置JVM参数如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
1月前
|
Java 应用服务中间件
SpringBoot 启动参数设置环境变量、JVM参数、tomcat远程调试
SpringBoot 启动参数设置环境变量、JVM参数、tomcat远程调试
115 0
|
2天前
|
存储 Java C++
Java虚拟机(JVM)在执行Java程序时,会将其管理的内存划分为几个不同的区域
【6月更文挑战第24天】Java JVM管理内存分7区:程序计数器记录线程执行位置;虚拟机栈处理方法调用,每个线程有独立栈;本地方法栈服务native方法;Java堆存储所有对象实例,垃圾回收管理;方法区(在Java 8后变为元空间)存储类信息;运行时常量池存储常量;直接内存不属于JVM规范,通过`java.nio`手动管理,不受GC直接影响。
14 5
|
23小时前
|
存储 Java 对象存储
jvm内存模型剖析
当线程cpu时间片执行完后,线程进入休眠状态,当再次唤醒时,通过程序计数器确定指令执行到哪一行,然后继续往下执行。
12 1