jstat结合 jvisualvm.exe(java自带内存分析工具)分析内存泄漏实例

5 篇文章 0 订阅

jstat是jdk自带的可以查看堆内存使用量及GC情况的指令.

具体情况请看另一篇博客: https://blog.csdn.net/liao0801_123/article/details/82908928

 jvisualvm.exe是java的jvm内存/线程监视工具, 位于jdk--bin目录下

以下通过一则简单的内存泄漏案例结合使用两个工具.

内存泄漏代码:

	class Key{
        Integer id;

        Key(Integer id){
            this.id = id;
        }

        public int hashCode(){
            return id.hashCode();
        }
    }

    public void method(){
        ......
        boolean ss = true;
		Map<Key, String> map = new HashMap<Key, String>();
        while(ss){
            for(int i = 0; i< 100000; i++){
                if(!map.containsKey(new Key(i))){
                    map.put(new Key(i), "Number:" + i);
                }
            }

            //Thread.sleep(1000L);
        }
        ......
    }

jvisualvm.exe截图

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

图中时间点16:07:30进入内存泄漏方法

绿色箭头, 接近堆内存使用峰值.

红色箭头, 宕机

蓝色箭头, 恢复

S0C      S1C      S0U      S1U      EC       EU        OC         OU        PC       PU         YGC    YGCT   FGC     FGCT     GCT
8704.0   8704.0   2520.3    0.0     69952.0  44990.8   174784.0   116411.3  61696.0  61600.4    203    1.352  17      4.381    5.733
8704.0   8704.0   2520.3    0.0     69952.0  45200.2   174784.0   116411.3  61696.0  61600.4    203    1.352  17      4.381    5.733
8704.0   8704.0   2520.3    0.0     69952.0  45408.2   174784.0   116411.3  61696.0  61600.7    203    1.352  17      4.381    5.733
8704.0   8704.0   2520.3    0.0     69952.0  45616.6   174784.0   116411.3  61696.0  61600.7    203    1.352  17      4.381    5.733
8704.0   8704.0   2520.3    0.0     69952.0  65486.6   174784.0   116411.3  61952.0  61700.4    203    1.352  17      4.381    5.733
8704.0   8704.0    0.0     6224.6   69952.0  34025.9   174784.0   116411.3  61952.0  61940.6    204    1.370  17      4.381    5.751
8704.0   8704.0    0.0     6224.6   69952.0  37953.5   174784.0   116411.3  62208.0  62144.6    204    1.370  17      4.381    5.751
8704.0   8704.0    0.0     6224.6   69952.0  39470.7   174784.0   116411.3  62208.0  62188.6    204    1.370  17      4.381    5.751
8704.0   8704.0    0.0     6224.6   69952.0  41256.0   174784.0   116411.3  62208.0  62207.5    204    1.370  18      4.381    5.751
8704.0   8704.0    0.0      0.0     69952.0   7639.7   174784.0   122571.6  62976.0  62918.8    204    1.370  18      4.879    6.249
8704.0   8704.0    0.0      0.0     69952.0   7895.4   174784.0   122571.6  62976.0  62918.8    204    1.370  18      4.879    6.249
8704.0   8704.0    0.0      0.0     69952.0   8120.1   174784.0   122571.6  62976.0  62918.8    204    1.370  18      4.879    6.249
8704.0   8704.0    0.0      0.0     69952.0   8375.8   174784.0   122571.6  62976.0  62918.9    204    1.370  18      4.879    6.249
8704.0   8704.0    0.0      0.0     69952.0   8542.6   174784.0   122571.6  62976.0  62919.7    204    1.370  18      4.879    6.249
8704.0   8704.0   8704.0   8704.0   69952.0  69952.0   174784.0   174784.0  64000.0  63867.6    206    1.740  19      4.879    6.619
8704.0   8704.0    0.0     5090.2   69952.0  69952.0   174784.0   174784.0  64000.0  63868.5    206    1.740  20      5.562    7.302
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63575.6    206    1.740  21      6.481    8.221
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63576.6    206    1.740  22      7.288    9.028
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63577.6    206    1.740  23      8.106    9.846
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63577.6    206    1.740  24      8.883   10.623
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63550.3    206    1.740  25      9.860   11.600
8704.0   8704.0    0.0     8703.9   69952.0  69952.0   174784.0   174784.0  63744.0  63551.5    206    1.740  26     10.659   12.398
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63551.5    206    1.740  27     11.451   13.191
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63551.5    206    1.740  28     12.267   14.007
8704.0   8704.0    0.0     8460.2   69952.0  69952.0   174784.0   174784.0  63744.0  63547.9    206    1.740  30     14.022   15.762
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63547.9    206    1.740  31     14.818   16.558
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63550.1    206    1.740  32     15.626   17.366
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63550.1    206    1.740  33     16.599   18.339
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63550.1    206    1.740  34     17.380   19.120
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63550.1    206    1.740  36     18.943   20.683
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  37     19.831   21.571
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  38     20.606   22.346
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  39     21.383   23.123
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  41     22.966   24.706
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  42     23.738   25.478
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  43     24.517   26.257
8704.0   8704.0    0.0     8703.9   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  44     25.293   27.033
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  45     26.176   27.915
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  47     27.780   29.520
8704.0   8704.0    0.0     8703.9   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  48     28.583   30.323
8704.0   8704.0    0.0     8703.9   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  49     29.371   31.111
8704.0   8704.0    0.0     8703.9   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  50     30.190   31.930
8704.0   8704.0    0.0     8703.9   69952.0  69952.0   174784.0   174784.0  63744.0  63549.9    206    1.740  51     31.189   32.929
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63472.8    206    1.740  52     31.997   33.737
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63488.0  63482.2    206    1.740  54     33.806   35.546
8704.0   8704.0    0.0     8703.7   69952.0  69952.0   174784.0   174784.0  63488.0  63484.4    206    1.740  55     34.589   36.329
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63488.0  63487.7    206    1.740  56     35.375   37.114
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63488.0  63487.5    206    1.740  57     36.283   38.023
8704.0   8704.0    0.0     8704.0   69952.0  69952.0   174784.0   174784.0  63744.0  63490.9    206    1.740  58     37.056   38.796
8704.0   8704.0    0.0      6.8     69952.0   1400.4   174784.0   111915.3  63744.0  63521.6    208    1.744  59     38.400   40.144
8704.0   8704.0   107.9     0.0     69952.0  64537.2   174784.0   111915.3  63744.0  63540.5    209    1.746  59     38.400   40.147
8704.0   8704.0   107.9     0.0     69952.0  64754.1   174784.0   111915.3  63744.0  63542.5    209    1.746  59     38.400   40.147
8704.0   8704.0   107.9     0.0     69952.0  64971.6   174784.0   111915.3  63744.0  63542.5    209    1.746  59     38.400   40.147
8704.0   8704.0   107.9     0.0     69952.0  65191.5   174784.0   111915.3  63744.0  63542.6    209    1.746  59     38.400   40.147
8704.0   8704.0   107.9     0.0     69952.0  65494.9   174784.0   111915.3  63744.0  63543.9    209    1.746  59     38.400   40.147
8704.0   8704.0   107.9     0.0     69952.0  69952.0   174784.0   111915.3  63744.0  63545.1    209    1.746  59     38.400   40.147
8704.0   8704.0    0.0     155.1    69952.0   307.5    174784.0   111915.3  63744.0  63545.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   457.2    174784.0   111915.3  63744.0  63545.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   761.1    174784.0   111915.3  63744.0  63545.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   912.8    174784.0   111915.3  63744.0  63545.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   1216.3   174784.0   111915.3  63744.0  63545.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   1368.0   174784.0   111915.3  63744.0  63545.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   1669.4   174784.0   111915.3  63744.0  63545.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   1825.3   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   2179.4   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   2333.9   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   2487.6   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   2786.9   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   2942.6   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0   3239.9   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0  25764.5   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0  26066.4   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0    0.0     155.1    69952.0  26222.5   174784.0   111915.3  63744.0  63547.1    210    1.748  59     38.400   40.149
8704.0   8704.0   198.3     0.0     69952.0   249.7    174784.0   111915.3  63744.0  63547.1    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0   415.4    174784.0   111915.3  63744.0  63547.1    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  19151.7   174784.0   111915.3  63744.0  63555.4    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  25719.0   174784.0   111915.3  63744.0  63594.3    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  30240.2   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  30494.3   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  30753.0   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  30879.9   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  31133.8   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  31387.1   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  31520.4   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  31768.1   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  32027.5   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  32154.4   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  32408.6   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  32671.6   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  32948.1   174784.0   111915.3  63744.0  63630.6    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  33200.2   174784.0   111915.3  63744.0  63630.7    211    1.751  59     38.400   40.151
8704.0   8704.0   198.3     0.0     69952.0  33457.5   174784.0   111915.3  63744.0  63630.7    211    1.751  59     38.400   40.151

可以看出从第19次Full GC开始Eden区和 老年代(Old Generation)的 总大小和使用大小相等, 即GC无法再回收掉内存, 也就无法分配空间给新对象. 抛出异常 java.lang.OutOfMemoryError: Java heap space

Exception in thread "ContainerBackgroundProcessor[StandardEngine[Catalina]]" java.lang.OutOfMemoryError: Java heap space
	at java.util.Arrays.copyOf(Arrays.java:2882)
	at java.lang.StringValue.from(StringValue.java:24)
	at java.lang.String.<init>(String.java:178)
	at java.io.Win32FileSystem.resolve(Win32FileSystem.java:241)
	at java.io.File.<init>(File.java:312)
	at org.apache.naming.resources.FileDirContext.file(FileDirContext.java:770)
	at org.apache.naming.resources.FileDirContext.doGetAttributes(FileDirContext.java:398)
	at org.apache.naming.resources.BaseDirContext.getAttributes(BaseDirContext.java:1163)
	at org.apache.naming.resources.BaseDirContext.getAttributes(BaseDirContext.java:1116)
	at org.apache.naming.resources.ProxyDirContext.getAttributes(ProxyDirContext.java:882)
	at org.apache.catalina.loader.WebappClassLoaderBase.modified(WebappClassLoaderBase.java:1185)
	at org.apache.catalina.loader.WebappLoader.modified(WebappLoader.java:500)
	at org.apache.catalina.loader.WebappLoader.backgroundProcess(WebappLoader.java:420)
	at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1341)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1542)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1552)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1552)
	at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1520)
	at java.lang.Thread.run(Thread.java:662)
Exception in thread "RMI TCP Connection(idle)" java.lang.OutOfMemoryError: Java heap space
	at java.io.ObjectInputStream$BlockDataInputStream.<init>(ObjectInputStream.java:2352)
	at java.io.ObjectInputStream.<init>(ObjectInputStream.java:274)
	at sun.rmi.server.MarshalInputStream.<init>(MarshalInputStream.java:111)
	at sun.rmi.transport.ConnectionInputStream.<init>(ConnectionInputStream.java:38)
	at sun.rmi.transport.StreamRemoteCall.getInputStream(StreamRemoteCall.java:115)
	at sun.rmi.transport.Transport.serviceCall(Transport.java:124)
	at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:535)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:790)
	at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:649)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
	at java.lang.Thread.run(Thread.java:662)

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值