美文网首页
记一次java应用内存占用分析

记一次java应用内存占用分析

作者: 沧行 | 来源:发表于2017-03-23 11:20 被阅读0次

    目标:分析应用哪个类创建的对象实例数最多。

    首先登录应用所在服务器,采用jps命令查询应用的进程id:


    8.png

    查到java进程id为13830,然后采用jmap命令dump出进程当前内存的情况:

    9.png

    该命令把进程的内存对象占用情况dump到heap文件中,接下来通过jhat命令来分析该heap文件。

    10.png

    jhat命令会在7000端口启动一个服务,通过网页可以访问各个对象的内存占用情况:

    1.png

    在该默认界面的最下面找到如下栏目:

    2.png

    点击Show instance counts for all classes,进入如下界面:

    3.png

    该界面显示了所有class的实例个数,由图可知,AtomicLong这个类的实例数量最多,点击该实例,进入如下界面:

    4.png

    在该实例的界面找到上图箭头所示链接,查看该类的引用关系统计,如下:

    5.png

    在Referrers by Type列表中找到最多的引用该类的类:

    6.png

    相关文章

      网友评论

          本文标题:记一次java应用内存占用分析

          本文链接:https://www.haomeiwen.com/subject/oulznttx.html