JProfiler帮助文档

JProfiler 简介

什么是 JProfiler?

JProfiler 是一款专业的工具,用于分析正在运行的 JVM 内部的情况。你可以在开发、质量保证以及生产系统出现问题时的紧急排查中使用它。

JProfiler 主要涵盖以下四个主题:

  • 方法调用
    这通常被称为“CPU profiling(CPU 分析)”。方法调用可以通过不同的方式进行测量和可视化。 对方法调用的分析有助于你理解应用程序的运行情况,并找到提升性能的方法。
  • 分配
    针对堆上的对象进行分配、引用链和垃圾回收的分析属于“内存分析(memory profiling)”范畴。 该功能可以帮助你修复内存泄漏、整体减少内存使用以及减少临时对象的分配。
  • 线程与锁
    线程可以持有锁,例如通过对对象进行同步。当多个线程协作时,可能会发生死锁,JProfiler 可以为你可视化这些死锁。 此外,锁也可能出现竞争,意味着线程在获取锁之前需要等待。JProfiler 能够深入洞察线程及其各种锁定情况。
  • 高级子系统
    许多性能问题发生在更高语义层面。例如,在 JDBC 调用中,你可能想要找出最慢的 SQL 语句。 针对这类子系统,JProfiler 提供了“探针(probe)”,可以将特定的有效负载(payload)附加到调用树(call tree)上。

JProfiler 的 UI 以桌面应用程序的形式提供。你可以交互式地分析正在运行的 JVM,或在不使用 UI 的情况下自动分析。 分析数据会以快照(snapshot)的形式持久化保存,并可通过 JProfiler UI 打开。此外,命令行工具和构建工具集成可以帮助你自动化分析会话(session)。

我该如何继续?

本文档建议按顺序阅读,后续的帮助主题会在前面内容的基础上进行扩展。

首先,架构(architecture)的技术概览将帮助你理解分析的工作原理。

有关安装 JProfiler分析 JVM(profiling JVMs)的帮助主题将帮助你快速上手。

随后,数据记录(data recording)快照(snapshots)的讨论将带你深入理解,从而能够自主探索 JProfiler。

后续章节将帮助你针对 JProfiler 的不同功能提升专业技能。最后的部分为可选阅读内容,可在需要特定功能时查阅。

我们非常欢迎你的反馈。如果你觉得某些领域的文档不够完善,或者发现文档中有不准确的地方,请随时通过 [email protected] 联系我们。

您可以使用键盘在章节之间导航。按 k 键前进,按 j 键后退。