JVM源码分析之String.intern()导致的YGC不断变长 - 你假笨
之所以想写这篇文章,是因为YGC过程对我们来说太过于黑盒,如果对YGC过程不是很熟悉,这类问题基本很难定位,我们就算开了GC日志,也最多能看到类似下面的日志
1 |
|
只知道耗了多长时间,但是具体耗在了哪个阶段,是基本看不出来的,所以要么就是靠经验来定位,要么就是对代码相当熟悉,脑袋里过一遍整个过程,看哪个阶段最可能,今天要讲的这个大家可以当做今后排查这类问题的一个经验来使,这个当然不是唯一导致YGC过长的一个原因,但却是最近我帮忙定位碰到的发生相对来说比较多的一个场景
具体的定位是通过在JVM代码里进行了日志埋点确定的,这个问题其实最早的时候,是帮助毕玄毕大师定位到这块的问题,他也在公众号里对这个问题写了相关的一篇文章YGC越来越慢,为什么,大家可以关注下毕大师的公众号HelloJava
,经常会发一些在公司碰到的诡异问题的排查,相信会让你涨姿势的,当然如果你还没有关注我的公众号你假笨
,欢迎关注下,后续会时不时写点或许正巧你感兴趣的JVM系列文章。
Read full article from JVM源码分析之String.intern()导致的YGC不断变长 - 你假笨
No comments:
Post a Comment