阅读系列--JVM案例分析

JVM调优的步骤:
前提是先定位到GC的问题

怎么查看用的是什么垃圾回收器

一般是查默认,但是如果jdk的版本和回收器的版本不一样会有什么影响???TODO

把日志按路径打印到指定地方,找到GC日志,按下图观察gc的解读

这是yang gc的日志

当发生gc的时候,利用日志结合jconsole

详细的日志:

一些其他jdk自带的工具去看

jmap:实时获取gc信息

jstat:jstat -gcutil   看Full gc 的次数

jstack :查看线程的dump

背景:

可以用命令行,也可以用图形界面java VisualVM,如下

上图的dump怎么看?网上有对应的字段意思介绍//TODO

jconsole:图形化界面

发生了outofMenory的时候怎么定位,先设置JVM参数,然后将出问题的日志打印到对应的文件里去

打开MAT:定位内存的一些信息(尤其是内存泄露)

总结:

怀疑内存泄露的思考步骤:

    1.看GC日志  126719K->126719K(126720K)
    2.dump
    3.MAT
        1.占用Retained Heap
        2.看有没有GC Root指向

//找下美团点评关于GC优化的文章TODO

猜你喜欢

转载自blog.csdn.net/qq_34707991/article/details/85146730
今日推荐