JVM常用参数配置

JVM常用参数配置

简单的java命令后面跟上配置参数。

  • -XX,JVM启动参数的一种类型,属于高级。
  • +,开启的意思

  • :,设置具体参数

    #jvm启动参数不换行
    #设置堆内存
    -Xmx4g -Xms4g
    #指定GC算法
    -XX:+UseG1GC -XX:MaxGCPauseMillis=50
    #指定GC并行线程数
    -XX:ParallelGCThads=4
    #打印GC日志
    -XX:+PrintGCDetails -XX:+PrintGCDateStamps
    #指定GC日志文件
    -Xloggc: gc.log
    #指定Meta区的最大值
    XX:MaxMetaspaceSize=2g
    设置单个线程栈的大小
    -Xss1m
    指定堆内存溢出时自动进行Dump
    -XX:+HeapDumpOnOutOfMemoryError
    -XX:HeapDumpPath=/usr/local/

堆配置:

●-Xms:初始堆大小

●-Xmx:最大堆大小

●-XX:NewSize=n:设置年轻代大小

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

●-XX:SurvivorRatio=n:年轻代中Eden区与两个Survivor区的比值。注意Survivor区有两个。如3表示Eden:3 Survivor:2,一个Survivor区占整个年轻代的1/5

●-XX:MaxPermSize=n:设置持久代大小

gc设置:

●-XX:+UseSerialGC:设置串行收集器

●-XX:+UseParallelGC:设置并行收集器

●-XX:+UseParalledlOldGC:设置并行年老代收集器

●-XX:+UseConcMarkSweepGC:设置并发收集器

● -XX:+UseG1GC

并行收集器设置

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

●-XX:MaxGCPauseMillis=n:设置并行收集最大的暂停时间(如果到这个时间了,垃圾回收器依然没有回收完,也会停止回收)

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

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

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

打印GC回收的过程日志信息

●-XX:+PrintGC

●-XX:+PrintGCDetails

●-XX:+PrintGCTimeStamps

●-Xloggc:filename

相关推荐
rannn_1111 小时前
【Java面试题】高频面试题1|Java 后端、MySQL、Redis 与 RAG 面试整理
java·jvm·数据库·后端·面试
学逆向的1 小时前
远程线程注入
开发语言·jvm·网络安全·win32
Mikko71 小时前
JVM 线上排查实战(七):jps 看不到进程、jstack 报不允许的操作怎么办?attach 失败的六种情况实测
java·运维·jvm·后端
且从容.2 小时前
JS篇-----
java·javascript·jvm
xiaoqiMikko17 小时前
JVM 线上排查实战(七):jps 看不见它、jstack 连不上它,可它明明活得好好的
java·jvm
用户0942485680318 小时前
第25章:Java虚拟线程(Project Loom)实战与调度协作
java·jvm
wuminyu19 小时前
ForkJoinPool内部WorkQueue的Lock-Free数组操作以及并发任务窃取原理剖析
java·linux·c语言·jvm·c++
墨天梦20 小时前
B10_文件SharedPreferences与SQLite
jvm·数据库·sqlite
EatFan1 天前
2026 Java 后端面试风向变了:八股文只是门槛,场景化追问才是淘汰线
java·开发语言·jvm·面试·后端面试·八股文·full gc
wuminyu2 天前
Virtual Thread重投递至ForkJoinPool任务队列过程解析
java·linux·c语言·jvm·c++