System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及计算机,特别是涉及一种线程池调整方法和装置、一种电子设备和一种存储介质。
技术介绍
1、现有业务系统在有限的资源条件下,为提升业务响应速度或处理效率,大部分使用了线程池技术。但现有线程池技术中,若需要高性能地利用线程池技术,则需要通过业务负载进行性能测试,寻找合适的线程池参数,对高效简单使用带来了复杂性。
2、现有的线程池调整技术存在以下不足:使用复杂,需要进行业务性能测试寻找合适的线程池数量指标;需要人工干预,对线程池进行配置和调优;资源利用率低,初始化好后,资源固定,无法有效的利用系统资源;无法保证稳定性,无法根据系统所处负载,动态调整,容易导致业务异常;不支持自适应系统变化调整,无法根据系统负载,动态调整线程池数量,无法灵活应对突发事件或负载波动。
3、因此,线程池如何自适应系统变化进行动态配置和调优,从而有效利用系统资源的问题亟待解决。
技术实现思路
1、本申请实施例提供了一种线程池调整方法,以解决线程池如何自适应系统变化进行动态配置和调优,从而有效利用系统资源的问题。
2、相应的,本申请实施例还提供了一种线程池调整装置、一种电子设备以及一种存储介质,用以保证上述方法的实现及应用。
3、为了解决上述问题,本申请实施例公开了一种线程池调整方法,所述方法包括:
4、监控电子设备的系统负载得到所述系统负载在第一预设时间范围内对应的监控指标数据;
5、若所述监控指标数据位于预设指标范围内,则将所述监控
6、根据所述监控指标数据对应的权重系数得到所述系统负载对应的系统负载值;
7、获取所述电子设备的线程池的线程池任务类型和负载截距;所述负载截距为预先设置,或,依据所述多元线性回归模型计算得到;
8、根据所述系统负载的系统负载值、所述线程池任务类型及所述负载截距计算第一总系统负载值;
9、根据所述第一总系统负载值调整所述线程池的线程数量。
10、可选地,所述系统负载包括中央处理器、磁盘、内存和网卡。
11、可选地,在所述监控电子设备的系统负载得到所述系统负载在第一预设时间范围内对应的监控指标数据之后,所述方法还包括:
12、若所述监控指标数据未位于预设指标范围内,则获取所述系统负载的所述监控指标数据中数值最大的所述监控指标数据作为最大监控指标数据;
13、将所述系统负载的所述监控指标数据与所述最大监控指标数据的比值,作为所述系统负载的标准化监控指标数据;
14、将所述系统负载的所述标准化监控指标数据输入预设多元线性回归模型,计算所述系统负载对应的权重系数。
15、可选地,所述根据所述系统负载的系统负载值、所述线程池任务类型及所述负载截距计算总系统负载值,包括:
16、根据所述系统负载的系统负载值计算中间系统负载值;
17、依据所述线程池任务类型设置任务权重系数,根据所述任务权重系数对所述中间系统负载值进行加权计算;
18、将所述加权计算后的所述中间系统负载值与所述负载截距相加,得到所述第一总系统负载值。
19、可选地,所述根据所述第一总系统负载值调整所述线程池的线程数量,包括:
20、获取第二预设时间范围内的第二总系统负载值;其中,所述第二预设时间范围早于所述第一预设时间范围;
21、将所述第二预设时间范围内中数值最大的总系统负载值作为最大阈值,以及,将所述第二预设时间范围内中数值最小的总系统负载值作为最小阈值;
22、根据所述第一总系统负载值、所述最大阈值和所述最小阈值调整所述线程池的线程数量。
23、可选地,所述根据所述第一总系统负载值、所述最大阈值和所述最小阈值调整所述线程池的线程数量,包括:
24、若所述第一总系统负载值大于或等于所述最大阈值,则按照预设规则逐步减少所述线程池的线程数量;
25、若所述第一总系统负载值小于所述最小阈值,则按照所述预设规则逐步增加所述线程池的线程数量。
26、可选地,所述多元线性回归模型的公式为:
27、y=a+b1*x1+b2*x2+b3*x3+…+bn*xn
28、其中,y为第一总系统负载值,a为负载截距,b1、b2、b3、…、bn为所述监控指标数据对应的权重系数,x1、x2、x3、…、xn为所述监控指标数据。
29、本申请实施例还公开了一种线程池调整装置,所述装置包括:
30、数据监控模块,用于监控电子设备的系统负载得到所述系统负载在第一预设时间范围内对应的监控指标数据;
31、多元线性回归模型模块,用于若所述监控指标数据位于预设指标范围内,则将所述监控指标数据输入预设多元线性回归模型,计算所述监控指标数据对应的权重系数;
32、系统负载值计算模块,用于根据所述监控指标数据对应的权重系数得到所述系统负载对应的系统负载值;
33、参数获取模块,用于获取所述电子设备的线程池的线程池任务类型和负载截距;所述负载截距为预先设置,或,依据所述多元线性回归模型计算得到;
34、第一总系统负载值计算模块,用于根据所述系统负载的系统负载值、所述线程池任务类型及所述负载截距计算第一总系统负载值;
35、线程数量调整模块,用于根据所述第一总系统负载值调整所述线程池的线程数量。
36、本申请实施例还公开了一种电子设备,包括:处理器;和存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如本申请实施例中一个或多个所述的线程池调整方法。
37、本申请实施例还公开了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如本申请实施例中一个或多个所述的线程池调整方法。
38、与现有技术相比,本申请实施例包括以下优点:
39、在本申请实施例中,监控电子设备的系统负载得到系统负载在第一预设时间范围内对应的监控指标数据,若监控指标数据位于预设指标范围内,则将监控指标数据输入预设多元线性回归模型,计算监控指标数据对应的权重系数;根据监控指标数据对应的权重系数得到系统负载对应的系统负载值,获取电子设备的线程池的线程池任务类型和负载截距;负载截距为预先设置,或,依据多元线性回归模型计算得到,根据系统负载的系统负载值、线程池任务类型及负载截距计算第一总系统负载值,根据第一总系统负载值调整线程池的线程数量。根据系统负载动态灵活调整线程池数量,减少了管理员或研发人员需要手动干预优化线程池的需求,降低维护成本,提高系统响应速度和处理能力,实现系统资源利用的优化。
本文档来自技高网...【技术保护点】
1.一种线程池调整方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述系统负载包括中央处理器、磁盘、内存和网卡。
3.根据权利要求1所述的方法,其特征在于,在所述监控电子设备的系统负载得到所述系统负载在第一预设时间范围内对应的监控指标数据之后,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述根据所述系统负载的系统负载值、所述线程池任务类型及所述负载截距计算第一总系统负载值,包括:
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一总系统负载值调整所述线程池的线程数量,包括:
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一总系统负载值、所述最大阈值和所述最小阈值调整所述线程池的线程数量,包括:
7.根据权利要求1所述的方法,其特征在于,所述多元线性回归模型的公式为:
8.一种线程池调整装置,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,包括:处理器;和
10.一个或多个机器可读介质,其上存储有可执行代
...【技术特征摘要】
1.一种线程池调整方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述系统负载包括中央处理器、磁盘、内存和网卡。
3.根据权利要求1所述的方法,其特征在于,在所述监控电子设备的系统负载得到所述系统负载在第一预设时间范围内对应的监控指标数据之后,所述方法还包括:
4.根据权利要求1所述的方法,其特征在于,所述根据所述系统负载的系统负载值、所述线程池任务类型及所述负载截距计算第一总系统负载值,包括:
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一总系统负载...
【专利技术属性】
技术研发人员:任涛民,车倩,喻波,王志海,安鹏,刘旺,
申请(专利权)人:北京明朝万达科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。