第 2 章 JDK Mission Control 简介

JDK Mission Control (JMC)是读取和分析 JFR 文件的工具集合。JMC 包含图表 JFR 事件的详细视图和图表。使用 JFR 分析时,JMC 还由以下组件组成:

  • JMX 控制台 MBean
  • 通过 flight 记录和 hprof 文件(JMC 7.1.0)的历史分析)
  • HPROF-dump analyzer

JMC 基于 Eclipse 平台。您可以使用 Eclipse RCP API 和其他特定 API 添加插件来扩展 JMC。

您可以在 Red Hat Enterprise Linux 或 Microsoft Windows 上使用 JMC 及其插件。

对于 Red Hat Enterprise Linux,带有 RHEL 9 的 CodeReady Linux Builder (CRB)存储库提供了 JMC 软件包。

注意

CRB 存储库也称为 Builder 存储库。

您必须在 RHEL 9 中启用 CRB 存储库,以便您可以在 RHEL 上安装 JMC。CRB 软件包使用 Source Red Hat Package Manager (SRPM)构建,作为产品化 RHEL 软件包,因此 CRB 软件包会收到常规更新。

CRB 是一个开发人员存储库,默认在 RHEL 上被禁用。CRB 包含 RHEL 用户帐户中随附的 buildroot root 文件系统的部分。buildroot root 文件系统包含用于构建应用程序的开发人员级构建依赖项。

如需有关 CRB 存储库的更多信息,请参阅 CodeReady Linux Builder 存储库 (Package manifest)。

2.1. 下载并安装 JMC

Red Hat OpenJDK 为 Red Hat Enterprise Linux 和 Microsoft Windows 构建,包括 JDK Mission Control (JMC)的版本。

对于 Red Hat Enterprise Linux,您可以使用 Red Hat Subscription Manager 工具在本地操作系统中下载并安装 JMC。

在 Microsoft Windows 中,JMC 软件包包含在 归档文件中,您可以从红帽客户门户网站下载。

在 Microsoft Windows 上下载并安装 OpenJDK 8 后,您可以导航到包含 jmc.exe 文件的目录,然后发出 jmc 命令。

2.1.1. 在 RHEL 9 上下载并安装 JMC

您可以使用 Red Hat Subscription Manager (RHSM)工具在本地 Red Hat Enterprise Linux (RHEL) 9 操作系统上下载并安装 JDK Mission Control (JMC)。

先决条件

流程

  1. 在 RHEL 上启用 CodeReady Linux Builder (CRB)存储库,以便您可以在 RHEL 上安装下载的 JMC 软件包。您可以通过完成以下操作来启用 CRB 存储库:

    1. 要在 RHEL 上启用 CRB 存储库,请发布以下 RHSM 命令:

      # subscription-manager repos --enable codeready-builder-for-rhel-9-x86_64-rpms
    2. 要检查 CRB 存储库中的模块列表,请运行以下命令:

      # yum module list --disablerepo=* --enablerepo=codeready-builder-for-rhel-9-x86_64-rpms

      以下示例输出显示在存储库 通用 配置集中定义的 javapackages-tools 模块:

      # yum module list --disablerepo=* --enablerepo=codeready-builder-for-rhel-9-x86_64-rpms
      
      Updating Subscription Management repositories.
      Last metadata expiration check: 0:40:08 ago on Tue 02 May 2023 08:49:29 AM EDT.
      Red Hat CodeReady Linux Builder for RHEL 9 x86_64 (RPMs)
      Name                      Stream        Profiles        Summary
      javapackages-tools        201801        common          Tools and macros for Java packaging support
      virt-devel                rhel                          Virtualization module
      
      Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

      前面的示例还显示了一个没有分配给任何配置集的 virt-devel 模块。

    3. 安装目标软件包。例如,要安装名为 xz-java 的软件包,请运行以下命令并确保遵循任何 CLI 命令提示:

      # yum install xz-java
  2. 要在操作系统上启动 JMC 控制台,请选择以下选项之一:

    • 进入包含 JMC 可执行文件的目录,然后运行以下命令:

      $ jmc -vm /usr/lib/jvm/java-11/bin/java
    • 使用系统的文件浏览器应用程序导航到 JDK Mission Control 目录,如 /usr/bin/jmc,然后双击 JMC 可执行文件。

2.1.2. 在 RHEL 7 或 RHEL 8 上下载并安装 JMC

您可以使用 Red Hat Subscription Manager (RHSM)工具在本地 Red Hat Enterprise Linux (RHEL) 7 或 RHEL 8 操作系统上下载并安装 JDK Mission Control (JMC)。

先决条件

流程

  1. 要在您的 RHEL 版本上下载 JMC 软件包,请运行以下命令。

    • RHEL 8:

      # sudo yum module install jmc:rhel8/common
    • RHEL 7:

      # sudo yum module install jmc:rhel7/common

      上一命令使用 Red Hat Subscription Management 工具将 JMC 软件包下载到 RHEL 操作系统。这个 JMC 软件包包括在 Red Hat Subscription Management 服务的 jmc 模块流中。

  2. 要在操作系统上启动 JMC 控制台,请选择以下选项之一:

    • 进入包含 JMC 可执行文件的目录,然后运行以下命令:

      $ jmc -vm /usr/lib/jvm/java-11/bin/java
    • 使用系统的文件浏览器应用程序导航到 JDK Mission Control 目录,如 /usr/bin/jmc,然后双击 JMC 可执行文件。