使用 VisualVM 监控执行缓慢的服务
使用 VisualVM 分析处于可运行状态的线程。线程在视觉上显示为一条绿线。如果看到一条线已经保持为绿色很长一段时间,并且该线不是默认 JVM 线程之一,则建议深入了解并分析事务。
VisualVM 不会记录数据随时间的变化。性能问题应在出现时立即进行分析和标识。
“线程”选项卡中,单击“线程转储”以捕获多个随时间变化的线程转储。这使您能够离线分析数据。
在示例中,http-nio-8080-exec-1 线程在很长一段时间内都处于活动状态。线程的相应调用堆栈显示该线程正在对数据库执行大型查询以检索流数据。在这种情况下,标识正在此线程上运行的服务并对其进行优化。