JProfiler 简要使用说明
1、简介
JProfiler是一个ALL-IN-ONE的JAVA剖析工具,可以方便地监控Java程序的CPU、内存使用状况,能够检查垃圾回收、分析性能瓶颈。
本说明文档基于JProfiler 9.2编写。
2、安装
安装包:JProfiler_windows-x64_9_2.exe (JProfiler 9注册码.txt)
如果要监控的远端服务器操作系统不同,在Select Component这步,可以选择安装不同系统的Native libraries for profiling agent。
如果要为Eclipse安装JProfiler插件,到安装插件的步骤时,选择当前Eclipse版本,再指定Eclipse路径即可。
3、启用本机监控
1、首先启动希望监测的Java进程,这里以我们的服务端为例。
2、打开JProfiler,选择菜单 Session - Start Center,切换到 Quick Attach 标签页。这里列出了当前本机上正在运行所有的Java进程,选择要监测的进程,按 Start 开始。

3、接下来的弹框中可以选择Instrumentation和Sampling两种预置的Profiling设置,为了使用JProfiler的全部特性,建议选择Instrumentation。
4、还可以进行详细设置,一般直接OK即可。
4、监控数据
1、 概览(Telemetrie)
在Overview页中,可以看到当前监控的Java程序概况,包括内存、垃圾回收、类、线程、CPU负载等图表。

2、 内存(Live Memory)
在All Objects可以看到内存中各个对象的数量和占用情况。在Recorded Objects和Class Tracker中,还可以对不同的对象或类分别监控。

3、 CPU (CPU views)
在Call Tree页,可以按运行顺序逐级查看当前程序运行耗时。

在Hot Sports页,可以看到各个方法的执行时间和调用次数,可用于辅助分析性能。

4、 堆遍历器(Heap walker)
在Heap walker页,可以点击相机图标按钮记录Heap快照。建立快照后,可以详细分析静态内存中对象数量。还可以查看不同对象的引用计数。

5、 线程(Threads)
Thread History页可以看到当前各个线程的工作状况。

6、 数据库(Database)
在JDBC页,可以看到连接时间轴、查询用时等信息。
在JPA/Hibernate页,可以获取到和数据库查询有关的Call Tree和Hot Spots。

5、数据导出
如图所示,Export能够将当前页的信息导出为HTML页面或XML数据。
根据当前处在不同的页面,最后还会有不同的项目,比如线程页可以选择Thread Dump。

6、参考文档
官方文档: http://resources.ej-technologies.com/jprofiler/help/doc/
一篇JProfiler笔记: http://blog.csdn.net/chendc201/article/details/22897999
内存泄漏相关:https://www.evvvvvvget.com/article/2013/5/22/18963.html
远程监控相关:http://stackoverflow.com/questions/12215487/remote-profiling-jprofiler
JProfiler 简要使用说明的更多相关文章
- CSDN CODE平台,中国版Github简要使用说明
CSDN CODE平台,中国版Github简要使用说明!(多图慎入) 楼主说 以前一直看到别人在用github发布自己的代码,各种牛逼,各种羡慕嫉妒恨.最后终于受不了了,也去注册了一个,注册到没什 ...
- Kafka 简要使用说明
Kafka 简要使用说明 参考文章 Kafka背景及架构介绍http://www.infoq.com/cn/articles/kafka-analysis-part-1 Apache kafka 工作 ...
- CSDN CODE平台,中国版Github简要使用说明!(多图慎入)
楼主说 以前一直看到别人在用github发布自己的代码,各种牛逼,各种羡慕嫉妒恨.最后终于受不了了,也去注册了一个,注册到没什么难度.然后就没有然后了... 完全看不懂,不知道怎么用. 一次偶然的机会 ...
- JProfiler 教程 使用说明
JProfiler (本文原创转载请注明) 简介 JProfiler是一个重量级的JVM监控工具,提供对JVM精确监控,其中堆遍历.CPU剖析.线程剖析看成定位当前系统瓶颈的得力工具.可以统计压 ...
- supervisor简要使用说明
安装方法(之一) pip install supervisor 主要组件 supervisord: 用于控制启用和退出子进程,记录子进程的标准输出和标准错误输出. supervisorctl: she ...
- tftp 简要使用说明
yum 安装:tftp tftp-server (2)启动tftp CentOS 6 service xinetd restart chkconfig tftp on CentOS ...
- Git学习笔记与IntelliJ IDEA整合
Git学习笔记与IntelliJ IDEA整合 一.Git学习笔记(基于Github) 1.安装和配置Git 下载地址:http://git-scm.com/downloads Git简要使用说明:h ...
- 使用psftp.exe
使用psftp.exe 点击打开psftp.exe,出现如下图的命令窗口.
- Linux帮助手册(man)
Linux的帮助文档 在我们使用Linux的过程中,都会遇到这样那样的问题,一般我们在计算机能连上网的情况下会进行百度或Google解决问题,但是并不是所有文题都能在网上很快得到答案.万一我们是在没有 ...
随机推荐
- keras各种优化方法总结 SGDmomentumnesterov
http://blog.csdn.net/luo123n/article/details/48239963 前言 这里讨论的优化问题指的是,给定目标函数f(x),我们需要找到一组参数x,使得f(x)的 ...
- Windows自带的端口转发工具netsh使用方法_DOS/BAT
Windows自带的端口转发工具netsh使用方法_DOS/BAT 作者:用户 来源:互联网 时间:2017-02-22 17:24:30 netsh 端口转发 摘要: 下面的代码在windows ...
- electron 大体结构
1.Electron支持的平台: OS XWindowsLinux 2.一个标准的electron app包含的结构: Windows 或是 Linux中:electron/resources/app ...
- MySql的基本架构演变
[MySql的基本架构演变] 没有并发的增长,也就没有必要做高可扩展性的架构. Scale-up : 纵向扩展,通过替换为更好的机器和资源来实现伸缩,提升服务能力 Scale-out : 横向扩展, ...
- C# split分割多个字符
string[] myAgent = agentInfo.Split(new string[] { "$#$" }, StringSplitOptions.None);
- springboot+cxf 开发webservice
参考 https://www.cnblogs.com/fuxin41/p/6289162.html pom.xml <?xml version="1.0" encoding= ...
- mysql中树形结构表的操作
一种是:邻接表模型(局限性:对于层次结构中的每个级别,您需要一个自联接,并且随着连接的复杂性增加,每个级别的性能自然会降低.在纯SQL中使用邻接列表模型充其量是困难的.在能够看到类别的完整路径之前,我 ...
- php去除bom
<?php /*检测并清除BOM*/ if(isset($_GET['dir'])){ $basedir=$_GET['dir']; }else{ $basedir = '.'; } $auto ...
- ECMAScript6新特性之Array API
一 填充数组 var arr = new Array(5); arr.fill('abc',2,4); console.log('Array.prototype.fill',arr); // [und ...
- iOS 网络请求中的空类型字符串转换
创建一个工具类, .h: #import <Foundation/Foundation.h> @interface MySetNullWithStrTool : NSObject +( ...