V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
superHyman
V2EX  ›  Java

想请教下关于 JVM 新生代和老年代中各个对象实例的 dump 问题(G1 垃圾回收器)

  •  
  •   superHyman · 2018-11-06 21:56:52 +08:00 · 3189 次点击
    这是一个创建于 2211 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前知道的一些工具有:
    https://github.com/alibaba/arthas
    https://github.com/alibaba/TBJMap
    https://github.com/DarLiner/vjtools/tree/master/vjmap

    最近在做的一个项目,放到服务器跑起来发现 Java 堆疯狂增长,因此想找一个能够实时查看 Eden 区和 Survivor 区的对象统计的工具,支持过滤,方便排查,但后两个工具只支持 CMS 和 ParallelGC,而我们服务器端要用 G1。因此想请教下各位,G1 回收器下是否有类似 vjmap 功能的工具推荐?

    6 条回复    2018-11-08 15:53:59 +08:00
    SilentHill
        1
    SilentHill  
       2018-11-07 10:34:08 +08:00
    不能远程用 jconsole 么。。
    omygod
        2
    omygod  
       2018-11-07 11:18:33 +08:00
    ha456.jar
    superHyman
        3
    superHyman  
    OP
       2018-11-07 16:45:32 +08:00
    @SilentHill jconsole 貌似只是个总览,看不到堆内新生代老年代的详细信息
    superHyman
        4
    superHyman  
    OP
       2018-11-07 16:47:20 +08:00
    @omygod 谢谢,其实想找一个能实时查询的,因有时候 dump 下来的文件实在是太大了
    SilentHill
        5
    SilentHill  
       2018-11-07 17:14:49 +08:00
    @superHyman 我记得 jconsole 是可以看到对象占用内存大小排序的。找内存堆疯狂增加是哪些对象导致的,然后在进一步结合代码优化。
    SpartzTao
        6
    SpartzTao  
       2018-11-08 15:53:59 +08:00
    JProfiler 能实时查询,也能按大小排序,其他不太清楚[doge]
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1256 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 18:08 · PVG 02:08 · LAX 10:08 · JFK 13:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.