谁知道jprofiler怎么使用啊
RT 请看连载:JProfiler 简介是一个全功能的
Java
剖析工具(
profiler
),专用于分析
J2SE
和
J2EE
应用程序。它把
CPU
、执行绪和内存的剖析组合在一个强大的
应用中。
JProfiler
可提供许多
IDE
整合和应用服务器整合用途。
JProfiler
直觉式的
GUI
让你可以找到效能瓶颈、抓出内存漏失
(memory leaks)
、并解决执行绪的问题。它让你得以对
heap walker
作资源回收器的
root analysis
,可以轻易找出内存溢出;
heap
快照(
snapshot
)模式让未被参照(
reference
)的对象、稍微被参照的对象、或在终结(
finalization
)队列的对象
都会被移除;整合精灵以便剖析浏览器的
Java
外挂功能。
JProfiler 特征
5.1 内存剖析
Memory profiler
JProfiler
的内存视图部分可以提供动态的内存使用状况更新视图和显示关于内存分配状况信息的视图。所有的视图都有几个聚集层并且能够显示现有存在的对象和作为垃圾回收的对象。
· 所有对象
显示类或在状况统计和尺码信息堆上所有对象的包。你可以标记当前值并显示差异值。
· 记录对象 Record objects
显示类或所有已记录对象的包。你可以标记出当前值并且显示差异值。
· 分配访问树 Allocation call tree
显示一棵请求树或者方法、类、包或对已选择类有带注释的分配信息的J2EE组件。 · 分配热点 Allocation hot spots
显示一个列表,包括方法、类、包或分配已选类的J2EE组件。你可以标注当前值并且显示差异值。对于每个热点都可以显示它的跟踪记录树。 5.2 堆遍历
Heap walker在JProfiler的堆遍历器(Heap walker)中,你可以对堆的状况进行快照并且可以通过选择步骤下寻找感兴趣的对象。堆遍历器有五个视图:
· 类 Classes
显示所有类和它们的实例。
· 分配 Allocations
为所有记录对象显示分配树和分配热点。
· 索引 References
为单个对象和“显示到垃圾回收根目录的路径”提供索引图的显示功能。还能提供合并输入视图和输出视图的功能。
· 数据 Data
为单个对象显示实例和类数据。
· 时间 Time
显示一个对已记录对象的解决时间的柱状图。
5.3 CPU
剖析
CPU profiler JProfiler
提供不同的方法来记录访问树以优化性能和细节。线程或者线程组以及线程状况可以被所有的视图选择。所有的视图都可以聚集到方法、类、包或J2EE组件等不同层上。CPU视图部分包括:
· 访问树 Call tree
显示一个积累的自顶向下的树,树中包含所有在JVM中已记录的访问队列。JDBC,JMS和JNDI服务请求都被注释在请求树中。请求树可以根据Servlet和JSP对URL的不同需要进行拆分。
· 热点 Hot spots
显示消耗时间最多的方法的列表。对每个热点都能够显示回溯树。该热点可以按照方法请求,JDBC,JMS和JNDI服务请求以及按照URL请求来进行计算。
访问图 Call graph
显示一个从已选方法、类、包或J2EE组件开始的访问队列的图。 5.4 线程剖析
Thread profiler对线程剖析,JProfiler提供以下视图:· 线程历史 Thread history
显示一个与线程活动和线程状态在一起的活动时间表。
· 线程监控 Thread monitor
显示一个列表,包括所有的活动线程以及它们目前的活动状况。
· 死锁探测图表 Deadlock Detection
显示一个包含了所有在JVM里的死锁图表。
· 目前使用的监测器 Current monitor useage
显示目前使用的监测器并且包括它们的关联线程。
· 历史检测记录 History usage history
显示重大的等待事件和阻塞事件的历史记录。
监测使用状态 Monitor usage statistics
显示分组监测,线程和监测类的统计监测数据。
5.5 VM 遥感勘测技术
VM telemetry观察JVM的内部状态,JProfiler提供了不同的遥感勘测视图,如下所示:· 堆 Heap
显示一个堆的使用状况和堆尺寸大小活动时间表。
· 记录的对象 Recorded objects
显示一张关于活动对象与数组的图表的活动时间表。
· 垃圾回收 Garbage collector
显示一张关于垃圾回收活动的活动时间表。
· 类 Classes
显示一个与已装载类的图表的活动时间表。
· 线程 Threads
显示一个与动态线程图表的活动时间表。 6 使用介绍6.1 JProfiler's start center 使用JProfiler's start center,你可以创建新的会话,编辑已有会话或者打开已保存的会话。在菜单中选择session start center ,有以下四个标签:Open session、New session、Convert session和Open snapshot。也可以在工具栏中点击图标打开start center。
6.1.1Open session
在start center 中,打开Open session标签,在窗口中显示所有预先定义的会话,如图: 你可以选择一个会话,点击OK来打开预定义的会话。
会话也可以被修改、复制、删除和排序。
也可以菜单中选择session Open session,打开Open session窗口。
6.1.2New session 会话能够通过两种途径创建:
� 人工配置:使用 按钮手工配置一个新的 session,配置完成后,开始运行
� 通过集成向导:使用集成向导上的三个按钮: 、和 。
� 会话创建完成后可以立即运行。在Open session标签页中能够看到新建的会话。
6.1.2.1 New Session 点击New Session按钮,显示Application Settings窗体,关于Application Settings配置,请参见2管理session
可以在菜单中选择Session�New Session,打开New Session 窗体6.1.2.2 New server integration 点击New server integration按钮,打开集成向导,引导你将JProfiler与本地或远程的应用服务器进行集成,步骤:
第一步、
选择需要集成的应用服务器
如果你所使用的应用服务器不在列表中,则选择“Generic application sever ”,并点击“下一步”;如图:
第二步、
选择要集成的应用服务器地址
选择要集成的应用服务器是本地的,还是远程的。如果你选择过程计算机,在选择的计算机上必须安装JProfiler,并选择远程计算机的操作系统,点击“下一步”如图: 第三步、 指定远程地址
输入远程计算机的IP地址或DNS名称,点击下一步。如图: 第四步、
指定远程安装目录
所选远程计算机上必须安装JProfiler,如果未安装,请先安装。如果已经安装,请输入安装目录,点击下一步。如图:
第五步、
选择启动脚本
选择所集成的应用服务器的启动脚本,如,TOMCAT在WINDOW下常用的启动脚本为start.dat。如果脚本是远程的,你必须有远程计算机磁盘的可写权限,或者将启动脚本拷贝到本地。
第六步、
选择JVM提供商,版本和模式
当你选择JAVA版本时,系统会自动选择推荐的模式
第七步、
选择监测的连接端口
JProfiler GUI 前端通过指定的端口连接被监测的JVM,默认端口为8849。请不要选择常用的端口,如80或8080。
第八步、
是否等待JProfiler GUI 在开发环境,建立选择第一项,很容易修改监测设置;如果你选择不等待,在启动应用服务器之前要先配置监测设置。VM参数依赖于JProfiler配置文件的位置;
配置文件要与远程计算机上的保持同步。