JVM 频繁full gc / oom内存溢出/ 分析工具 jmap/Jconsole 用法

分析解决方法:

1 用JVisualVM 或Jconsole 分析 进程(不用jmap dump出镜像,JVisualVM功能比Jconsole强大)

2 先用jmap dump出镜像,再导入mat分析

-------------------------

Java内存分析工具MAT(Memory Analyzer Tool)

 

JVisualVM是一个集成多个JDK命令行工具的可视化工具。可以作为Java应用程序性能分析和运行监控的工具。

Jconsole是JDK自带的监控工具,在JDK/bin目录下可以找到。它用于连接正在运行的本地或者远程的JVM,对运行在java应用程序的资源消耗和性能进行监控,并画出大量的图表,提供强大的可视化界面。而且本身占用的服务器内存很小,甚至可以说几乎不消耗。

Jhat (Java Heap Analysis Tool)

https://programskills.blog.csdn.net/article/details/114169046  《JVM性能监控于故障处理工具 jps/ jstat/jinfo/jmap/jhat/jstack/HSDIS/jconsole/jvisualvm》

-------------------------

ZBMAC-f2b04ccbd:~ zhangsan$ jmap -help

Usage:

    jmap [option] <pid>

        (to connect to running process)

    jmap [option] <executable <core>

        (to connect to a core file)

    jmap [option] [server_id@]<remote server IP or hostname>

        (to connect to remote debug server)

 

where <option> is one of:

    <none>               to print same info as Solaris pmap

    -heap                to print java heap summary

    -histo[:live]        to print histogram of java object heap; if the "live"

                         suboption is specified, only count live objects

    -clstats             to print class loader statistics

    -finalizerinfo       to print information on objects awaiting finalization

    -dump:<dump-options> to dump java heap in hprof binary format

                         dump-options:

                           live         dump only live objects; if not specified,

                                        all objects in the heap are dumped.

                           format=b     binary format

                           file=<file>  dump heap to <file>

                         Example: jmap -dump:live,format=b,file=heap.bin <pid>

    -F                   force. Use with -dump:<dump-options> <pid> or -histo

                         to force a heap dump or histogram when <pid> does not

                         respond. The "live" suboption is not supported

                         in this mode.

    -h | -help           to print this help message

    -J<flag>             to pass <flag> directly to the runtime system

 

ZBMAC-f2b04ccbd:~ zhangsan$ jmap -dump:format=b,file=dumpv1 83511  #把进程83511的堆信息打印出来

Dumping heap to /Users/zhangsan/dumpv1 ...

Heap dump file created

ZBMAC-f2b04ccbd:~ zhangsan$ 

 

-------------------------

 

ZBMAC-f2b04ccbd:~ zhangsan$ jconsole

输入jconsole后,会自动打开,先选择一个进程,再连接

mac jdk1.8

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页