JVM 调优

目的是:

减少父GC,最终减少STW

也就是父没了,子肯定就会减少

当full gc是,就可能出现STW, (意思是在GC时,就要停用户线程,比如一个用户下单,这时要GC了,下单过程就有卡顿, 其实就是暂时锁死程序,先GC,清掉没用的。 为什么有这么个机制? 如果没有,一边跑下单线程,一边跑GC,搞不好把下单线程中的对象给清了)

这是打开windows下的监控JVM工具

https://www.bilibili.com/video/BV1Wb4y1B7Xv?p=5&vd_source=297c866c71fa77b161812ad631ea2c25

下面的程序,因为局部变量heapTests是不会释放的,但又在不停的new,最后肯定会OOM。

CC这里是一个插件

结果

60m达到了100M的一半,就触发了xxxxx,就会被放到old区,慢慢的就满了,也就会Full GC

下面是把100M调大到200M,这样就好了。因为60m没有200M一半,不会触发年龄判断,同时,每14s触发年轻代的垃圾回收,同时也会把这60M的一起回收的。

底层用G1垃圾回收机制

相关推荐
Clockwiseee5 分钟前
SSTI记录
运维·服务器·redis·学习
huangyuchi.10 分钟前
【C++】智能指针
开发语言·jvm·c++·笔记·c++11·智能指针·shared_ptr
珹洺12 分钟前
Linux操作系统从入门到实战(六)Linux开发工具(上)详细介绍什么是软件包管理器,Linux下如何进行软件和软件包的安装、升级与卸载
linux·运维·服务器
小白的白是白痴的白34 分钟前
配置yarn模式
linux·运维·服务器
计算机人哪有不疯的37 分钟前
Hadoop的组成,HDFS架构,YARN架构概述
大数据·数据库·hadoop·spark
文牧之44 分钟前
Oracle 通过 ROWID 批量更新表
运维·数据库·oracle
LLLLLindream1 小时前
Redis——达人探店
数据库·redis·缓存
一只鹿鹿鹿1 小时前
智慧能源大数据平台建设方案(PPT)
java·大数据·数据库·能源
✿ ༺ ོIT技术༻1 小时前
Linux:深入理解网络层
运维·服务器·网络
时序数据说1 小时前
IoTDB 分段查询语句深度剖析:GROUP BY 与时序语义的完美结合
大数据·数据库·开源·时序数据库·iotdb