目录

Jvm参数——规律记忆方法

根据JVM调优参数的命名规律和功能,可以将其分类归纳如下:

一、参数类型与命名规律

  1. 标准参数-开头)

    稳定性高,如-version-help

  2. 非标准参数-X开头)

    功能稳定但可能随版本变化,命名多采用英文缩写

    • -XmsM emory Start(初始堆内存)
    • -XmxM emory MaX(最大堆内存)
    • -XmnNew Generation(新生代大小)
    • -XssS tack Size(线程栈大小)
  3. 高级参数-XX开头)

    命名规则更复杂,常见模式:

    • 布尔开关-XX:+UseG1GC(启用G1)、-XX:-UseTLAB(禁用TLAB)
    • 数值配置-XX:NewRatio=2(新生代:老年代=1:2)
    • 缩写组合-XX:MaxMetaspaceSize(元空间最大容量)

二、核心参数分类与示例

1. 内存管理

参数 作用 记忆规律(英文缩写)
-Xms512m 初始堆内存 M emory Start
-Xmx4g 最大堆内存 M emory MaX
-Xmn2g 新生代大小 New Generation
-XX:MetaspaceSize=256m 元空间初始大小 Meta(元数据)+ Space(空间)
-XX:MaxDirectMemorySize=1g 堆外内存限制 Direct(直接)+ Memory

2. 垃圾回收(GC)

参数 作用 记忆规律
-XX:+UseG1GC 启用G1垃圾回收器 Use + G1(算法名)
-XX:MaxGCPauseMillis=200 最大GC停顿时间目标 Max + GC Pause(停顿)
-XX:SurvivorRatio=8 Eden与Survivor区比例(8:1:1) Survivor(幸存区)+ Ratio(比例)
-XX:MaxTenuringThreshold=15 对象晋升老年代年龄阈值 Tenuring(晋升)+ Threshold(阈值)

3. 线程与并发

参数 作用 记忆规律
-Xss1m 线程栈大小 S tack Size
-XX:ParallelGCThreads=4 并行GC线程数 Parallel(并行)+ GC线程
-XX:ConcGCThreads=2 并发GC线程数 Concurrent(并发)

4. 性能调优

参数 作用 记忆规律
-XX:+UseCompressedOops 启用压缩指针(节省内存) Compressed (压缩)+ O bject P ointers
-XX:+DoEscapeAnalysis 开启逃逸分析(栈上分配对象) Escape(逃逸)+ Analysis(分析)

三、记忆规律总结

  1. 参数前缀

    • -X:非标准参数,多用于内存和基础配置。
    • -XX:高级调优,覆盖GC、线程、元数据等。
  2. 缩写逻辑

    • 单字母缩写 :如ms(Memory Start)、mx(Memory Max)。
    • 单词组合 :如NewRatio(新生代比例)、SurvivorRatio(幸存区比例)。
    • 功能描述 :如UseG1GC(使用G1回收器)、HeapDumpOnOutOfMemoryError(内存溢出时导出堆快照)。
  3. 版本演进

    • JDK 8后PermSizeMetaspaceSize取代。
    • JDK 9后G1成为默认GC。

四、调优建议

  1. 堆内存-Xms-Xmx设为相同值,避免动态扩容开销。
  2. GC选择:低延迟选G1/ZGC,高吞吐选Parallel GC。
  3. 监控工具 :结合jstatjmap和GC日志分析瓶颈。

通过理解参数命名规律,可以更高效地记忆和组合使用JVM调优参数。

本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
Asthenia04128 分钟前
BCrypt vs MD5:加盐在登录流程和数据库泄露中的作用
后端
追逐时光者33 分钟前
由 MCP 官方推出的 C# SDK,使 .NET 应用程序、服务和库能够快速实现与 MCP 客户端和服务器交互!
后端·.net·mcp
AskHarries1 小时前
如何获取oracle cloud永久免费的vps(4C/24G)?
后端
烛阴1 小时前
Express入门必学三件套:路由、中间件、模板引擎全解析
javascript·后端·express
欧宸雅1 小时前
Perl语言的文件系统
开发语言·后端·golang
uhakadotcom1 小时前
使用 boto3 读取 AWS S3 文件的简单指南
后端·面试·github
程序猿chen2 小时前
《JVM考古现场(十六):太初奇点——从普朗克常量到宇宙弦的编译风暴》
jvm·git·后端·程序人生·金融·java-ee·量子计算
字节源流2 小时前
【spring Cloud Netflix】OpenFeign组件
java·spring boot·后端
Asthenia04122 小时前
Numpy:数组的范围创建/变形/转置/展平
后端
兔子的洋葱圈3 小时前
【django】3 (django路由) 路由配置和反向解析
后端·python·django