JVM篇——JVM调优实战,JVM调优参数汇总

什么是调优

1、根据需求进行JVM规划和预调优
2、优化运行JVM运行环境(慢、卡顿,一般都是通过单接口压测或者Skywalking进行全链路压测
3、解决JVM运行过程中出现的各种问题,比如Memory Leak、OOM

JVM调优参数汇总

VM(Java Virtual Machine)的调优参数主要用于优化Java应用程序的性能和资源使用。以下是一些常用的JVM调优参数以及它们的用法:
1. 堆内存参数:
o -Xms:设置JVM启动时分配的堆内存大小。例如,-Xms512m表示分配512MB的堆内存。
o -Xmx:设置JVM最大堆内存大小。例如,-Xmx1g表示最大堆内存为1GB。
o -XX:NewRatio:设置新生代与老年代的比例。例如,-XX:NewRatio=3表示新生代与老年代的大小比例为1:3。
o -XX:SurvivorRatio:设置新生代中Eden区与Survivor区的比例。例如,-XX:SurvivorRatio=8表示Eden区与Survivor区的比例为8:1:1。
2. 垃圾回收参数:
o -XX:+UseConcMarkSweepGC:启用CMS垃圾回收器。
o -XX:+UseParallelGC:启用并行垃圾回收器。
o -XX:+UseG1GC:启用G1垃圾回收器。
o -XX:MaxGCPauseMillis:设置GC暂停时间目标(适用于G1垃圾回收器)。
3. 线程参数:
o -XX:+UseNUMA:启用NUMA支持,优化多核CPU内存访问性能。
o -XX:+UseBiasedLocking:启用偏向锁,提高锁竞争的性能。
o -XX:+UseFastAccessorMethods:使用快速访问方法,提高数组和字段访问的速度。
4. 类加载参数:
o -XX:+ClassUnloadingWithConcurrentMark:在CMSCleanUp阶段清理不再使用的类。
5. 其他参数:
o -XX:+PrintGC:打印垃圾回收日志。
o -XX:+PrintGCDetails:打印详细的垃圾回收日志。
o -XX:+HeapDumpOnOutOfMemoryError:当发生OutOfMemoryError时,生成堆转储文件。
o -XX:HeapDumpPath=/path/to/dumpfile.hprof:设置堆转储文件的路径和文件名。
6. 性能监控参数:
o -XX:+UsePerfData:启用性能计数器支持,用于监控JVM性能。
o -XX:+PrintTenuringDistribution:打印老年代中对象的年龄分布。
7. 其他实用参数:
o -XX:OnError="command":当JVM遇到致命错误时执行指定的命令。
o -XX:+HeapDumpOnCtrlBreak:当按下Ctrl+Break时生成堆转储文件。
8. 调优工具: 除了以上参数外,还可以使用各种性能分析工具,如VisualVM、JProfiler、YourKit等,来深入分析应用程序的性能瓶颈和资源使用情况,从而进行针对性的调优。
以上参数提供了对JVM性能和资源使用的大致控制,但具体的调优策略需要根据应用程序的具体需求和性能测试结果来确定。在进行调优时,建议先对应用程序进行性能测试,找到瓶颈所在,然后根据实际情况调整参数或使用更高级的工具进行优化。

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Be explorer

若认可笔者文章,手头富裕望支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值