在 VS Code 中使用 GraalVM 和 VisualVM 进行性能和内存分析


在最近的 GraalVM 21.2 版本中,我们改进了对 VS Code 的工具支持,VS Code 现在与 VisualVM 紧密集成。它实际上不仅仅是一个分析器,更适合描述为一个多合一的 Java 监控和故障排除工具。这意味着现在直接从 VS Code 对 Java 项目进行性能和内存分析变得更加容易和舒适!
本文提供了使用 GraalVM Extension Pack for Java 开发和分析代码的示例,重点介绍 VisualVM 集成特性。使用一个非常简单的场景,您将学习如何与您的项目一起启动 VisualVM,并使用自动生成的设置立即对其进行分析。一旦发现问题,您还将看到从 VisualVM 中的分析结果导航回 VS Code 编辑器中的源是多么容易。以及更多!
如果您想按照本文中的步骤进行操作,则需要安装必要的工具:

  • VS代码

如果您发现目前没有准备好 VS Code 安装,请获取一个.
  • 所需的扩展

使用扩展活动为 Java 扩展安装 GraalVM 扩展包。通过这种方式,您将在 VS Code 中获得 Java 8+ 开发所需的一切,包括 GraalVM 和 Micronaut 的一些很酷的东西。有关扩展的更多详细信息,请参阅市场条目
请禁用或卸载您可能已经安装的任何其他 Java 开发扩展,以确保您能够准确地一步一步地遵循本文。
  • 附加软件

您需要在 VS Code 中安装和设置最新的 GraalVM 版本。切换到Gr活动并单击下载并安装 GraalVM按钮,或添加现有的 GraalVM 21.2 安装或更新版本。下载新的 GraalVM 实例时,您可以选择自己喜欢的发行版——社区版(可免费用于所有用途)或企业版(可免费用于评估和开发)。访问GraalVM网站graalvm.org了解更多关于GraalVM分布和特点。
下载并安装 GraalVM 后,确保将其标记为活动状态,最终使用设置活动 GraalVM 安装操作(“主页”图标)将该安装设置为活动状态。这将设置 VS Code 环境以将特定的 GraalVM 用于Java 开发。
到目前为止一切顺利,但 VisualVM 在哪里?这不就是全部吗?!事实上,你只有一个。VisualVM 与每个 GraalVM 安装捆绑在一起,配置为在它之上运行,并经过测试与它一起工作。无需从visualvm.github.io下载独立版本,但仍然欢迎您访问以学习新的有用的东西。
 
使 VS Code 中的分析变得非常简单的关键功能是Gr活动视图中的VISUALVM部分:
该部分包含要分析的进程的句柄以及用于控制和调用最有用的 VisualVM 功能的操作。可以使用Process:节点的Select process操作提前选择要分析的流程,也可以调用任何需要具体流程上下文的 VisualVM 操作。设置进程句柄的第三种方法是让 VisualVM 支持在项目进程启动后立即自动选择它。用于分析的 VisualVM 实例由活动的 GraalVM 安装定义。
 
为 VisualVM 设置
要使 VS Code 项目与 VisualVM 顺利集成,请切换到Run and Debug活动,单击create a launch.json 文件链接,选择Java 8+环境,并添加一个名为Launch VisualVM & Java 8+的特殊启动配置使用编辑器中的添加配置...按钮的应用程序launch.json。不要忘记保存修改后的文件!的运行和调试活动视图被更新,并且现在显示一个运行和调试选择器,其限定所述活性的启动配置。单击它并选择Launch VisualVM & Java 8+ Application配置。
 
分析性能
现在一切准备就绪,可以运行和分析项目了!使用运行| 开始调试或运行| 运行无调试操作以构建和启动项目。在某些时候,您会注意到 VisualVM 与项目一起启动,最终显示其 GUI 并在“监视器”选项卡上打开项目进程。这是默认设置——您可以更改Gr | 中的初始选项卡。使用更多操作...菜单的VISUALVM窗格。