3.4. 识别 Java 线程高 CPU 使用率


注意

对于在 Red Hat Enterprise Linux 或 Solaris 上使用 JBoss EAP 的客户,红帽客户门户网站上的 JVMPeg 实验室工具可帮助 收集和分析 Java 线程信息来识别高 CPU 使用率。按照 使用 JVMPeg 实验工具的说明,而不是使用以下步骤。

对于 OpenJDK 和 Oracle JDK 环境,可使用 jstack 工具提供 Java 线程诊断信息。

  1. 识别使用高 CPU 百分比的 Java 进程的进程 ID。

    在高使用过程中获取每个线程 CPU 数据也很有用。这可以通过在 Red Hat Enterprise Linux 系统上使用 top -H 命令来完成。

  2. 使用 jstack 实用程序,创建 Java 进程的堆栈转储。例如,在 Linux 和 Solaris 上:

    jstack -l JAVA_PROCESS_ID > high-cpu-tdump.out
    Copy to Clipboard Toggle word wrap

    您可能需要创建多个转储,以便查看一段时间内的任何更改或趋势。

  3. 分析堆栈转储。您可以使用 Thread Dump Analyzer (TDA) 等工具。
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat