[发明专利]线程负载的检测方法、装置、电子设备及存储介质在审
申请号: | 202110070925.3 | 申请日: | 2021-01-19 |
公开(公告)号: | CN112749013A | 公开(公告)日: | 2021-05-04 |
发明(设计)人: | 匡凌轩 | 申请(专利权)人: | 广州虎牙科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F11/30 |
代理公司: | 北京市立方律师事务所 11330 | 代理人: | 刘延喜 |
地址: | 511442 广东省广州市番禺*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 线程 负载 检测 方法 装置 电子设备 存储 介质 | ||
本申请提供了线程负载的检测方法、装置、电子设备及存储介质,属于应用监控技术领域。其中,线程负载的检测方法包括:通过线程池的预设接口周期性获取线程池中各个线程与处理请求相关的执行信息;根据执行信息确定线程池中所有线程对应的总执行时间与处理目标请求的时延;根据总执行时间与所有线程处理目标请求的时延确定目标请求在总线程负载资源中所占的线程负载率。本申请的实施能够自动化获取线程池中各个线程与处理请求相关的执行信息,且可以确定线程池所处理的每一请求对应所需的线程资源,有利于提高应用服务监控的效率。
技术领域
本申请涉及应用监控技术领域,具体而言,本申请涉及一种线程负载的检测方法和装置,一种电子设备,以及一种计算机可读存储介质。
背景技术
在软件技术中,工作线程请求处理能力是应用服务质量的重要数据指标,在进行应用的线程监控中,现有技术一般是采用jstack等命令向服务器获取与线程执行的相关信息,根据获取的信息确定当前线程运行的状态。然而,现有技术中,每次采用jstack等命令向服务器获取数据均需要工作人员手动操作,该业务操作繁琐,处理效率低;且所获取的信息仅可知悉当前线程运行的状态,无法确定线程处理每一请求所需的线程资源。
发明内容
本申请的目的旨在提供一种线程负载的检测方法、装置、电子设备及存储介质,以解决上述的至少一个技术问题。本申请实施例所提供的方案具体如下:
第一方面,本申请提供了一种线程负载的检测方法,包括:
通过线程池的预设接口周期性获取线程池中各个线程与处理请求相关的执行信息;
根据所述执行信息确定所述线程池中所有线程对应的总执行时间与处理目标请求的时延;
根据所述总执行时间与所有线程处理目标请求的时延确定所述目标请求在总线程负载资源中所占的线程负载率。
可选地,所述通过线程池的预设接口周期性获取线程池中各个线程与处理请求相关的执行信息之前,还包括:根据应用框架的接口参数设定所述线程池的预设接口。
可选地通过线程池的预设接口周期性获取线程池中各个线程与处理请求相关的执行信息的步骤,包括:
根据所述预设接口周期性获取线程池中当前执行任务的线程数量、当前已创建的线程数量、线程池预设最大的线程数量、线程池预设最小的线程数量、线程处理各个请求的起始时间与结束时间中的至少一项信息。
可选地,所述根据所述执行信息确定所述线程池中所有线程对应的总执行时间与处理目标请求的时延,包括:
根据所述执行信息中包括的当前执行任务的线程数量与线程池预设最大的线程数量确定当前的并发能力;
若所述当前的并发能力大于第一预设阈值,根据所述执行信息确定所述线程池中所有线程执行的总执行时间与处理目标请求的时延。
可选地,所述根据所述执行信息确定所述线程池中所有线程对应的总执行时间与处理目标请求的时延,包括:
根据所述执行信息中包括的线程处理目标请求的起始时间与结束时间,确定各个线程处理所述目标请求的时延;
根据当前统计周期的时间与所述执行信息中包括的当前已创建的线程数量,确定所述线程池中所有线程对应的总执行时间。
可选地,所述根据所述总执行时间与处理目标请求的时延确定所述目标请求在总线程负载资源中所占的线程负载率,包括:
根据所有线程处理目标请求的时延在所述总执行时间中的占比,确定目标请求在总线程负载资源中所占的线程负载率。
可选地,还包括以下任意一项:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州虎牙科技有限公司,未经广州虎牙科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110070925.3/2.html,转载请声明来源钻瓜专利网。