线程剖析
当事务的响应时间过长时,您可以选择对某个应用实例进行事务级别的线程剖析,采集线程状态,定位该事务中性能消耗最大的线程和方法,进而突破性能瓶颈。
对事务进行线程剖析的步骤如下:
进入事务详情页面后,单击线程剖析页签。
在页面右上角单击新建剖析按钮,弹出新建线程剖析对话框。
勾选要进行线程剖析的应用实例、持续时长、采样间隔和事务最大请求次数。
应用实例:一个事务可能会在多个应用实例中执行,因此涉及应用实例的选择。
事务最大请求次数:剖析时间范围内,事务的请求数超过设置的值时(默认值为100),将不再进行剖析。持续时间和事务最大请求次数两个条件满足其一,即结束剖析。
说明:应用实例的CPU使用率和内存使用率大于80%时,不允许执行线程剖析。
单击开始剖析按钮,剖析任务将显示在剖析列表中。
新的剖析任务会等待任务下发,大约1分钟后开始执行。支持自定义表头和批量删除剖析任务。
当状态列显示为“已完成”时,可单击该条任务查看剖析结果。
上方显示各种类型、各种执行状态的线程的数量。
支持按线程聚合和按调用方法聚合2种聚合方式,单击按钮进行切换。
当选择按调用方法聚合时,可查看调用该事务的所有线程的代码调用堆栈详细信息。默认展开最耗时线程的堆栈。支持根据线程过滤调用堆栈。单击包名过滤按钮,选中的包名将不显示在堆栈中。单击收起所有页签,仅展示Web、后台和其他3类线程的耗时百分比。