跳到主要内容
版本:3.7.0

线程剖析

在线程管理与性能诊断领域,线程剖析是针对应用程序线程运行状态、调度行为、资源消耗的专项分析技术,核心功能围绕 “拆解线程层面的性能问题、保障多线程程序稳定性” 展开,具体包括:线程运行状态全维度监控、线程资源消耗精准统计、线程调度与交互行为追踪、可视化与问题定位辅助

前置条件

线程剖析能需要在探针安装时进行开启,具体的开启操作可查看探针安装。。

使用场景

  • 多线程并发性能瓶颈定位:用采用多线程架构(如线程池处理任务),但整体吞吐量低、响应慢,无法充分利用 CPU 资源。
  • 线程阻塞与死锁故障排查:应用运行中出现 “卡顿、无响应”,日志无明确错误信息,推测为线程阻塞或死锁。
  • 线程资源竞争与同步优化:应用中存在大量线程共享资源(如共享缓存、数据库连接),出现频繁的锁竞争,导致线程等待耗时过长。

开始使用

1、进入系统服务 -> 诊断工具页面,可查看线程剖析页签,在此页面可创建线程剖析任务及查看历史任务数据 threadprofiling1

2、创建线程剖析任务,需选择具体的服务实例以及持续时间后下发剖析任务。

提示
  • 探针执行线程剖析任务时可能导致所有应用线程(STW)暂停,使应用程序响应变慢。
  • 仅支持java技术类型的服务实例

threadprofiling2

3、查看剖析详情,支持按按线程维度分析每个线程的状态、CPU用时等信息。 threadprofiling3

4、当点击表格内某行时可查看堆栈详情,支持按按堆栈调用顺序查看线程的方法级的耗时及占比。 threadprofiling4