3.3. 通过 Java 线程识别高 CPU 利用率
注意
对于在红帽企业 Linux 或 Solaris 上使用 JBoss EAP 的客户,红帽客户门户上的 JVMPeg 实验室工具有助于收集和分析 Java 线程信息,以识别 CPU 利用率。按照使用 JVMPeg 实验工具的说明,而不使用以下步骤:
对于 OpenJDK 和 Oracle JDK 环境,可以使用 jstack
实用程序获取 Java 线程诊断信息。
确定占用 CPU 较高百分比的 Java 进程的进程 ID。
它也可用于获取高利用率进程的每线程 CPU 数据。这可以通过在 Red Hat Enterprise Linux 系统上使用
top -H
命令来完成。使用
jstack
实用程序创建 Java 进程的堆栈转储。例如,在 Linux 和 Solaris 中:Copy to Clipboard Copied! Toggle word wrap Toggle overflow jstack -l JAVA_PROCESS_ID > high-cpu-tdump.out
jstack -l JAVA_PROCESS_ID > high-cpu-tdump.out
您可能需要间隔创建多个转储,以查看一段时间内的任何变化或趋势。
- 分析堆栈转储。您可以使用线程 Dump Analyzer(TDA)等工具。