zoukankan      html  css  js  c++  java
  • GCViewer / MAT

      jvm出现问题时,我们可以开启jmx功能,使用jvisualvm或者jconsole等监控其他机器上的jvm的运行情况,如https://www.cnblogs.com/princessd8251/p/4374882.html所述。

      

      但很多情况下,我们无法直接监控其他机器上的jvm运行情况,有的只是一份gc的日志文件,这时可以使用GCViewer来直观的查看日志文件,看看GC频率,堆的各部分的增长情况等。

      

      使用GCViewer可以有一个直观的认识,但是GCViewer做不了分析功能。

      要分析内存泄露等,还需要使用jmap等生成堆信息文件,再使用MAT、jvisualvm等工具分析。如https://my.oschina.net/feichexia/blog/196575

      使用MAT、jvisualvm分析时,可以分析可能存在内存泄露的类,类之间的引用关系。也可以比较2个堆文件,查看那些对象的实例数一直增加,进一步分析泄露的原因。

      大内存的jvm生成的堆信息文件,使用MAT、jvisualvm本地分析时可能无法打开,占用资源太多。可以使用jmap配合jhat,内存占用要小很多。

      linux服务器上,jps,jstat是更方便的监控工具。

  • 相关阅读:
    JavaSE-面向对象
    JavaSE-数组
    JavaSE-方法
    JavaSE-流程控制
    JavaSE-基础语法
    Java-初识Java
    PTH的几种食用姿势
    CVE-2020-1472 Zerologon
    OpenGL 术语
    使用IDEA创建SpringMVC项目
  • 原文地址:https://www.cnblogs.com/lnlvinso/p/9873867.html
Copyright © 2011-2022 走看看