JVM 调优
2023-12-16 21:57:40
目的是:
减少父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垃圾回收机制
文章来源:https://blog.csdn.net/liuming690452074/article/details/134066975
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!