Intellij IDEA 集成 JProfiler 性能分析神器 
                                                    
                        
                    
                    
  
                    
                    什么是Jprofile
JProfiler是由ej-technologies GmbH公司开发的一款性能瓶颈分析工具(该公司还开发部署工具)。
其特点:
- 使用方便
- 界面操作友好
- 对被分析的应用影响小
- CPU,Thread,Memory分析功能尤其强大
- 支持对jdbc,noSql, jsp, servlet, socket等进行分析
- 支持多种模式(离线,在线)的分析
这里主要是作为分析 Dump 内存文件,例如以下代码
//Dump;
public class Test5 {
    Byte[] array = new Byte[1024*1024];//1MB
    public static void main(String[] args) {
        ArrayList<Test5> list = new ArrayList<>();
        int count = 0;
        //Throwable
          //Exception
          //Error
        try {
            while (true) {
                list.add(new Test5());
                count = count +1;
            }
        }catch (Error e){
            System.out.println(count);
            e.printStackTrace();
        }
    }
}一直循环在 list 集合里添加新对象,新对象都会占用1M的内存,会造成堆内存溢出:java.lang.OutOfMemoryError,由于堆内存溢出是Error,不是Exception,需要用Error来捕获,在实际开发中有时很难检查出错误,需要使用Jprofile来分析。
- 先配置 Java 虚拟机,在 VM Options 中添加配置


-Xms1m -Xmx8m -XX:+HeapDumpOnOutOfMemoryError这里是将 JVM 虚拟机初始化总内存大小为1M,最大内存为8M,然后将堆内存溢出导出为Dump文件。
用 Jprofile 打开
可以看到内存占用信息
具体代码问题

下载
Plugins 中,搜索下载安装Jprofile

官网下载
官网地址:Jprofile 官网地址
序列号
JProfiler11 序列号
L-J11-Everyone#speedzodiac-327a9wrs5dxvz#463a59
A-J11-Everyone#admin-3v7hg353d6idd5#9b4本作品采用《CC 协议》,转载必须注明作者和本文链接
 
           HuDu 的个人博客
 HuDu 的个人博客
         
             
             
             
           
           关于 LearnKu
                关于 LearnKu
               
                     
                     
                     粤公网安备 44030502004330号
 粤公网安备 44030502004330号 
 
推荐文章: