栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java学习笔记1—JVM虚拟机—1.3参数调优

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java学习笔记1—JVM虚拟机—1.3参数调优

系列文章目录

Java学习笔记1—JVM虚拟机—1.1运行时数据区_摸金青年v的博客-CSDN博客

Java学习笔记1—JVM虚拟机—1.2垃圾回收机制_摸金青年v的博客-CSDN博客


目录

系列文章目录

前言

一、参数含义

1 堆内存参数设置

2 垃圾回收参数设置

3  GC日志分析

总结


前言

            Java虚拟机的参数调优,决定了是否合理的利用了现有机器的内存空间,程序运行时是否合理的占用和释放内存,避免虚拟机内存溢出,如何设置合理的参数非常重要。


一、参数含义

1 堆内存参数设置

必须依据机器的核数和内存

比如:4c8g机器

-Xms 4096M:JVM启动初始化堆大小为4g,建议取内存的一半,充分利用内存。

-Xmx 4096M:JVM最大的堆大小为2g,将-Xms和-Xmx的值配置为一样,可以避免每次垃圾回收完成后对JVM堆大小进行重新的调整。

-Xmn 512M:堆中的新生代大小为512M

-Xss 128K:每个线程的堆栈大小为128K

比如:2c2g机器

-Xms 1024M  -Xmx 1024M  -Xmn512M   -Xss128K

2 垃圾回收参数设置

 需要依据应用是否高并发来制定

2.1 高并发应用的参数建议

分析:1)需要快速响应,允许频繁回收,但保持回收停顿时间少

           2)并发的垃圾回收算法,复制+标记清理

           3)机器内存和cpu足够

推荐:CMS垃圾回收器

参数配置:

-XX:+UseConcMarkSweepGC                    表示:启用CMS

-XX:CMSInitiatingOccupancyFraction=70   表示:内存占用70%时触发GC

-XX:+UseCMSInitiatingOccupancyOnly      表示:一直使用CMSInitiatingOccupancyFraction=70

高并发量特别高的时候,垃圾对象产生过多

建议设置-XX:CMSInitiatingOccupancyFraction=30  提高GC的频率

3  GC日志分析

各参数表示的含义

1)第一个参数:发生GC的时间

2)这次垃圾收集的停顿类型,不是来区分新生代GC或老年代GC的

新生代收集器也会出现Full GC,一般是由于分配担保失败导致的

3)后面表示发生GC的区域,根据垃圾收集器的不同而名称不同

4)Gc前内存占用->GC后内存占用(Java堆总容量)

5)GC占用的时间,单位秒


总结

以上就是今天要讲的内容,本文仅仅简单介绍了虚拟机参数调优

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/992099.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号