zoukankan      html  css  js  c++  java
  • Eclipse MAT和jvisualvm分析内存溢出

    ---------------------------------------------mac os版------------------------------------------------------

    MAT是内存分析工具

    1、下载

    http://www.eclipse.org/mat/downloads.php

    MAC的下载地址

    http://www.eclipse.org/downloads/download.php?file=/mat/1.8.1/rcp/MemoryAnalyzer-1.8.1.20180910-macosx.cocoa.x86_64.zip

    2、解压后得到

    3、运行并指定需要分析的dump文件,得到eclipse试图

    4. 核心报表 class histogram

    check 是否有超大对象滞留

    --------------------------------------------------------------------------------windows----------------------------------------------------------------------------

    1、mat 下载地址 https://www.eclipse.org/mat/downloads.php(注意本地jdk是64的就下载64位),下载下来解压就以用,同上macos差不多。

    2、 jvisualvm,是jdk自带的,本地的打开本地jdk安装路径  jvisualvm.exe,mac os也可以打开。

    ****************************************************************重点如下*************************************************************************************

    1、场景概述:内存溢出情况,如何定位去分析(Exception in thread "main"java.lang.OutOfMemoryError: Java heap space)

    2、配置你的工程jvm启动参数加入重要参数(-XX:+HeapDumpOnOutOfMemoryError),这个参数配置完成后,系统发生OutOfMemoryError发生时自动生成 Heap Dump 文件,

       然后分析dump文件,Java内存使用情况时,往往是在OOM(OutOfMemoryError)发生时。

    操作例子如下:

    1)创建一个demo工程,加入HeapLeak类

    2)然后配置你的vm options参数:-Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=D:optHeapLeak.hprof

      开发环境,测试环境,预发布环境,生产环境(可以在jenkins配置,大家可能没有权限)

      

    3)运行结果,当出现内存溢出时,会生成dump文件

    4)jvisualvm分析文件(可以是.dump结尾的文件也可以是.hprof的文件),查看概要基本信息中会指出oom的异常问题,

    会找到你内存溢出的主因,查看如下:

    5)mat分析文件,图中指出区域发生内存溢出的区域,点击details可以查看具体oom

    补充版:

    JProfiler 内存分析

    下载地址:https://www.ej-technologies.com/products/jprofiler/overview.html

    把dump 根式文件后缀修改为 hprof  并打开

     打开 biggest Object  并且 点检show in graph

     
  • 相关阅读:
    关于前端输入框的限制和有效值
    js,jquery转json的几种方法
    java,js,jstl,EL的简单交互
    mysql字段冲突报错
    js的一些压缩和优化性能
    一个不错的html素材网站
    redis之数据操作详解
    redis之持久化操作
    redis之django-redis
    redis知识总汇
  • 原文地址:https://www.cnblogs.com/wangzun/p/12010668.html
Copyright © 2011-2022 走看看