一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

线程池管理方法、装置、计算机设备及存储介质与流程

2022-04-27 11:35:25 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,尤其涉及一种线程池管理方法、装置、计算机设备及存储介质。


背景技术:

2.随着智能终端的发展和网络环境的普及,用户可以通过终端上安装的各种应用客户端对网络进行访问,在进行访问时,就会向有关服务器发送各种请求,所以服务器会面临大量的访问请求。为保证用户的体验,服务器需要保证一定的响应时间,所以需合理的分配线程的数量。现有技术中常通过增加缓存或使用多个线程池进行并行处理的方法,来提高响应速度,但资源消耗过高,因此,如何在资源消耗保持较低的情况下,提高请求的响应速度成为了亟待解决的问题。


技术实现要素:

3.本技术提供了一种线程池管理方法、装置、计算机设备及存储介质,以解决现有技术中,在资源消耗保持稳定时,请求的响应速度较低的问题。
4.为解决上述问题,本技术提供了一种线程池管理方法,包括:
5.获取配置信息表;
6.根据所述配置信息表,定时获取各接口的响应时间以及各线程池的运行情况;
7.将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果;
8.根据所述调整结果以及所述线程池的运行情况,确定各所述接口对应线程池的具体调整方案;
9.根据各所述接口对应线程池的具体调整方案,对所述线程池进行对应调整,并对所述配置信息表进行更新。
10.进一步的,所述获取配置信息表包括:
11.向预设知识库发送调用请求,所述调用请求携带验签令牌;
12.接收所述知识库返回的验签结果,并在验签结果为通过时,调用所述预设知识库中的所述配置信息表,所述验签结果为所述知识库根据所述验签令牌进行rsa非对称加密方式验证得到。
13.进一步的,在所述获取配置信息表之前,还包括:
14.获取各所述接口对应的历史响应时间以及对应的线程池数量;
15.根据各所述接口对应的历史响应时间,计算各所述接口的历史平均响应时间;
16.根据各所述接口对应的线程池数量,对各所述接口的历史平均响应时间进行加权求和,得到所述目标响应时间。
17.进一步的,所述将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果
包括:
18.根据各所述接口分别对应的多个响应时间,计算各所述接口的平均响应时间;
19.将所述各接口对应的响应时间、平均响应时间以及目标响应时间输入所述调整模型,得到所述调整结果,所述调整模型基于决策树模型训练得到。
20.进一步的,所述根据所述调整结果以及所述线程池的运行情况,确定各所述接口对应线程池的具体调整方案包括:
21.当所述调整结果为待调整时,将所述线程池的运行情况中的队列情况与第一预设阈值进行比对;
22.若所述队列情况小于等于所述第一预设阈值时,确定所述接口对应的线程池的具体调整方案为不调整;
23.若所述队列情况大于所述第一预设阈值时,确定所述接口对应的线程池的具体调整方案为增加线程池。
24.进一步的,所述根据所述调整结果以及所述线程池的运行情况,确定各所述接口对应线程池的具体调整方案包括:
25.当所述调整结果为可调整时,将所述线程池的运行情况中的队列情况与第二预设阈值进行比较;
26.若所述队列情况小于所述第二预设阈值时,确定所述接口对应的线程池的具体调整方案为减少线程池;
27.若所述队列情况大于等于所述第二预设阈值时,确定所述接口对应的线程池的具体调整方案为不调整。
28.进一步的,所述根据各所述接口对应线程池的具体调整方案,对所述线程池进行对应调整包括:
29.根据各所述接口对应线程池的具体调整方案,对所述线程池进行内部分配;
30.若不存在闲置的线程池时,对缺少线程池的接口进行分配新建的线程池处理;
31.若存在闲置的线程池时,对所述闲置的线程池进行下线处理。
32.为了解决上述问题,本技术还提供一种线程池管理装置,所述装置包括:
33.获取模块,用于获取配置信息表;
34.定时抽取模块,用于根据所述配置信息表,定时获取各接口的响应时间以及各线程池的运行情况;
35.第一判断模块,用于将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果;
36.第二判断模块,用于根据所述调整结果以及所述线程池的运行情况,确定各所述接口对应线程池的具体调整方案;
37.调整模块,用于根据各所述接口对应线程池的具体调整方案,对所述线程池进行对应调整,并对所述配置信息表进行更新。
38.为了解决上述问题,本技术还提供一种计算机设备,包括:
39.至少一个处理器;以及,
40.与所述至少一个处理器通信连接的存储器;其中,
41.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的线程池管理方法。
42.为了解决上述问题,本技术还提供一种非易失性的计算机可读存储介质,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如上所述的线程池管理方法。
43.根据本技术实施例提供的一种线程池管理方法、装置、计算机设备及存储介质,与现有技术相比至少具有以下有益效果:
44.通过获取配置信息表,根据所述配置信息表,定时获取配置信息表中各接口的响应时间以及各线程池的运行情况;将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果,再根据所述线程池的调整结果以及运行情况,确定各所述接口对应线程池的具体调整方案,以提高线程池资源的利用率,避免浪费,根据各所述接口对应线程池的具体调整方案,对线程池进行对应调整,并对所述配置信息表进行更新,由于对各接口对应的线程池按照具体调整方案进行了调整,即在一接口对应线程池的排队队列较长时,对其进行了增加线程池的处理,从而实现提高接口对应请求的响应速度。
附图说明
45.为了更清楚地说明本技术中的方案,下面将对本技术实施例描述中所需要使用的附图做一个简单介绍,显而易见地,下面描述中的附图是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
46.图1为本技术一实施例提供的线程池管理方法的流程示意图;
47.图2为图1中的步骤s3的一种具体实施方式的流程图;
48.图3为图1中的步骤s5的一种具体实施方式的流程图;
49.图4为本技术一实施例提供的线程池管理装置的模块示意图;
50.图5为本技术一实施例的计算机设备的结构示意图。
具体实施方式
51.除非另有定义,本文所使用的所有的技术和科学术语与属于本技术的技术领域的技术人员通常理解的含义相同;本文中在申请的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本技术;本技术的说明书和权利要求书及上述附图说明中的术语“包括”和“具有”以及它们的任何变形,意图在于覆盖不排他的包含。本技术的说明书和权利要求书或上述附图中的术语“第一”“第二”等是用于区别不同对象,而不是用于描述特定顺序。
52.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本技术的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是是相同的实施例,也不是与其它实施例相互排斥的独立的或备选的实施例。本领域技术人员显式地或隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
53.本技术提供一种线程池管理方法。参照图1所示,图1为本技术一实施例提供的线程池管理方法的流程示意图。
54.在本实施例中,线程池管理方法包括:
55.s1、获取配置信息表;
56.在本技术中,所述配置信息表包括线程池管理基表、接口信息表、分配关系表以及目标响应时间等;所述线程池管理基表用于记录当前已创建多少线程池,每个线程池的状态(空闲、再用或已下线),线程队列的总长度,已使用长度等信息;所述接口信息表用于记录接口的基本信息,包括接口编号、中文名称、当前响应时间、历史响应时间,所述接口对应的每个请求,都会保存其响应时间,根据所述响应时间来实时更新接口信息表;分配关系表用于记录接口目前使用的线程池数量,当有请求进入服务器时,会先查此表,以便于为请求分配对应的线程池进行处理。
57.进一步的,所述获取配置信息表包括:
58.向预设知识库发送调用请求,所述调用请求携带验签令牌;
59.接收所述知识库返回的验签结果,并在验签结果为通过时,调用所述预设知识库中的所述配置信息表,所述验签结果为所述知识库根据所述验签令牌进行rsa非对称加密方式验证得到。
60.具体的,由于配置信息表,可能会涉及隐私数据,所以对于历史运行数据都会保存至预设数据库中,所以在获取配置信息表时,数据库会进行验签步骤,以保证数据的安全,避免泄露数据等问题。
61.整个过程为,客户端计算消息m的第一消息摘要,并用rsa非对称加密方式对第一消息摘要进行加密(利用客户端的私钥),得到签名s,将消息m和签名s再利用知识库的公钥,得到密文c,发送至知识库,知识库使用自己的私钥对密文c进行解密,得到消息m和签名s,知识库使用客户端的公钥对签名s进行解密,得到第一消息摘要;同时知识库用同样的方法对消息m进行摘要提取,得到第二消息摘要,判断第一消息摘要和第二消息摘要是否相同,相同则验证成功;不同则验证失败。
62.通过将所述配置信息表加密保存,在提取时,进行验签步骤,保证了配置信息表数据的安全,避免泄露。
63.进一步的,在所述获取配置信息表之前,还包括:
64.获取各所述接口对应的历史响应时间以及对应的线程池数量;
65.根据各所述接口对应的历史响应时间,计算各所述接口的历史平均响应时间;
66.根据各所述接口对应的线程池数量,对各所述接口的历史平均响应时间进行加权求和,得到所述目标响应时间。
67.具体的,由于配置信息表中的接口信息表,记录了每次各接口对应请求的响应时间;且在配置信息表中的分配关系表中,记录有各接口分配的线程池数量。根据各所述接口对应的历史响应时间来计算,各所述接口在预设时间内的历史平均响应时间,由于响应时间与各接口对应线程池分配数量是强相关的,所以根据各所述接口对应的线程池数量,对各所述接口的历史平均响应时间进行加权求和,得到所述目标响应时间。所述历史响应时间是指前一天,或前预设天数的响应时间数据。
68.通过对目标响应时间的计算,便于后续对接口对应线程池进行调整,使得各接口对应的响应时间变小,且消耗的资源保持较小。
69.s2、根据所述配置信息表,定时获取各接口的响应时间以及各线程池的运行情况;
70.具体的,通过所述配置信息表中记录的各接口对应的分配线程池的数量,设置一个定时任务,即每预设时间执行一次,获取所述配置信息表中接口信息内每个接口的响应时间以及线程池的运行情况,即线程池的已使用队列长度。所述响应时间为一个请求进入线程池进行处理得到结果并输出的一段时间。
71.s3、将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果;
72.具体的,通过将目标响应时间与各所述接口的响应时间输入调整模型,通过调整模型对各所述接口对应的线程池进行调整判断,得到各所述接口对应的调整结果,所述调整模型为基于决策树模型训练得到,决策树模型具有较强的解释性,能很好的得到调整结果。
73.进一步的,如图2所示,所述将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果包括:
74.根据各所述接口分别对应的多个响应时间,计算各所述接口的平均响应时间;
75.将所述各接口对应的响应时间、平均响应时间以及目标响应时间输入所述调整模型,得到所述调整结果,所述调整模型基于决策树模型训练得到。
76.具体的,通过获取各接口分别对应的多个响应时间,即通过定时任务,从表中获取预设时间内的多个响应时间,例如定时任务为每10分钟一次,则获取前10分钟内多个请求对应的响应时间,分别计算各接口在预设时间(即如本实施例的10分钟)内的平均响应时间;将各接口对应的响应时间、平均响应时间以及目标响应时间输入所述调整模型,得到各接口对应的调整结果,所述平均响应时间大于目标响应时间。
77.具体的,所述平均响应时间与目标响应时间可具体看成一直线或折线,而各接口对应的响应时间为一个,对应的即表示为一个点;利用所述调整模型去判断位置关系,针对多种特殊情况,所述调整模型也能得出调整结果,所述调整模型为基于决策树模型训练得到的。具体根据平均响应时间和目标响应时间,与定时任务获取的多个请求对应的响应时间的位置关系进行判断,来得出所述调整结果,具体调整结果以及对应的判断方式可根据以下方式来得出:
78.所述所述线程池对应的调整结果可分为待调整、可调整和待下线三种;
79.当所述响应时间超过目标响应时间预设百分比,但未超过接口对应的平均响应时间时,所述调整模型得到的调整结果为待调整,具体的预设百分比为根据决策树模型根据历史数据训练得到的;
80.当所述响应时间未超过目标响应时间预设百分比,且未超过接口对应的平均响应时间时,所述调整模型得到的调整结果为可调整;
81.当所述平均响应时间为0,由于所述平均响应时间为在预设时间内多个响应时间的平均值,由于为0,即证明在该预设时间内都无请求进入时,所述调整模型得到的调整结果为待下线。
82.通过利用决策树来训练得到调整模型,利用调整模型对响应时间等数据进行判断,得到对应的调整结果,实现提高请求的响应速度。
83.s4、根据所述调整结果以及所述线程池的运行情况,确定各所述接口对应线程池
的具体调整方案;
84.具体的,由于上述仅通过响应时间这一个维度进行了判断,得到的调整结果可能会较单一,所以在结合其他维度进行统一判断,根据所述线程池的调整结果以及运行情况,确定所述线程池的具体调整方案,具体根据调整结果,将运行情况与第一预设阈值或第二阈值进行比对,从而得到最终的具体调整方案。
85.进一步的,所述根据所述调整结果以及所述线程池的运行情况,确定各所述接口对应线程池的具体调整方案包括:
86.当所述调整结果为待调整时,将所述线程池的运行情况中的队列情况与第一预设阈值进行比对;
87.若所述队列情况小于等于所述第一预设阈值时,确定所述接口对应的线程池的具体调整方案为不调整;
88.若所述队列情况大于所述第一预设阈值时,确定所述接口对应的线程池的具体调整方案为增加线程池。
89.具体的,当所述调整结果为待调整时,将所述线程池的运行情况中的队列情况与第一预设阈值进行比对,所述队列情况即已使用的队列长度占线程总队列长度的比例;若所述队列情况小于等于所述第一预设阈值时,确定所述线程池的具体调整方案为不调整;若所述队列情况大于所述第一预设阈值时,确定所述接口对应的线程池的具体调整方案为增加线程池,具体为在接口多分配一个线程池,在本实施例中,所述第一预设阈值可为70%。
90.通过将调整结果与队列情况进行综合判断,提高了得到具体调整方案的效果,使得最终的具体调整方案,能在降低资源消耗的同时,提高对请求的响应速度。
91.进一步的,所述根据所述调整结果以及所述线程池的运行情况,确定各所述接口对应线程池的具体调整方案包括:
92.当所述调整结果为可调整时,将所述线程池的运行情况中的队列情况与第二预设阈值进行比较;
93.若所述队列情况小于所述第二预设阈值时,确定所述接口对应的线程池的具体调整方案为减少线程池;
94.若所述队列情况大于等于所述第二预设阈值时,确定所述接口对应的线程池的具体调整方案为不调整。
95.具体的,当所述调整结果为可调整时,将所述线程池的运行情况中的队列情况与第二预设阈值进行比较,所述第二预设阈值小于第一预设阈值;
96.若所述队列情况小于所述第二预设阈值时,确定所述接口对应的线程池的具体调整方案为减少线程池,具体为减少一个线程池;
97.若所述队列情况大于等于所述第二预设阈值时,确定所述接口对应的线程池的具体调整方案为不调整。在本技术实施例中,所述第二预设阈值可为20%。
98.通过将调整结果与队列情况进行综合判断,提高了得到具体调整方案的效果,使得最终的具体调整方案,能在降低资源消耗的同时,提高对请求的响应速度。
99.s5、根据各所述接口对应线程池的具体调整方案,对所述线程池进行对应调整,并对所述配置信息表进行更新。
100.具体的,由于得到的是各接口分别对应的线程池的具体调整方案,所以先确定总的线程池的增加或减少数量,若是总的线程池需增加数量的,先对已建立的线程池进行内部分配,经内部分配后,新建所需增加的数量并对缺少线程池的接口进行分配线程池;若是总的线程池数量减少的,经内部分配后,将多余的线程池进行下线处理。将调整后各接口对应的线程池分配关系同步到所述配置信息表中。具体的将各接口对应的线程池分配关系同步到配置信息表中的分配关系表,对已保存的分配关系进行更新。后续有请求进入时,将先进行查询最新的配置信息表中的分配关系表,以确定所述请求进入哪一个线程池进行处理。
101.进一步的,如图3所示,所述根据各所述接口对应线程池的具体调整方案,对所述线程池进行对应调整包括:
102.根据各所述接口对应线程池的具体调整方案,对所述线程池进行内部分配;
103.若不存在闲置的线程池时,对缺少线程池的接口进行分配新建的线程池处理;
104.若存在闲置的线程池时,对所述闲置的线程池进行下线处理。
105.具体的,根据各接口对应线程池的具体调整方案,首先进行各接口间的内部分配;
106.例如,现有接口1,2,3;当前分配线程池的数量为1,2,3;且各接口分配对应的具体调整方案为增加、增加、减少时,首先进行内部分配,即接口3的线程池将分配给接口1或接口2中的任意一个,此时经内部分配后,还缺少一个线程池,即不存在其他闲置的线程池时,此时需新建一线程池并分配到接口1或接口2中,在内部分配中未分配到线程池的接口,使得最终接口1,2,3;对应的线程池为2,3,2。
107.同样的,在内部分配完毕后,还有多余的线程池,即闲置的线程池时,将对所述闲置的线程池进行下线处理,以节约资源。
108.根据各接口对应的具体调整方案,对各接口对应的线程池进行对应调整,实现在保持消耗资源较低的情况下,提高对请求的响应速度。
109.需要强调的是,为了进一步保证数据的私密性和安全性,所述企业训练数据以及待评估企业对应的评估结果数据还可以存储于一区块链的节点中。
110.本技术所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
111.通过获取配置信息表,根据所述配置信息表,定时获取配置信息表中各接口的响应时间以及各线程池的运行情况;将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果,再根据所述线程池的调整结果以及运行情况,确定各所述接口对应线程池的具体调整方案,以提高线程池资源的利用率,避免浪费,根据各所述接口对应线程池的具体调整方案,对线程池进行对应调整,并对所述配置信息表进行更新,实现在资源消耗保持较低的情况下,提高接口对应请求的响应速度。
112.本技术实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、
延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
113.人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
114.本实施例还提供一种线程池管理装置,如图4所示,是本技术线程池管理装置的功能模块图。
115.本技术所述线程池管理装置100可以安装于电子设备中。根据实现的功能,所述线程池管理装置100可以包括获取模块101、定时抽取模块102、第一判断模块103、第二判断模块104以及调整模块105。本技术所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
116.在本实施例中,关于各模块/单元的功能如下:
117.获取模块101,用于获取配置信息表;
118.进一步的,所述获取模块101包括调用请求发送子模块以及调用子模块;
119.所述调用请求发送子模块,用于向预设知识库发送调用请求,所述调用请求携带验签令牌;
120.所述调用子模块,用于接收所述知识库返回的验签结果,并在验签结果为通过时,调用所述预设知识库中的所述配置信息表,所述验签结果为所述知识库根据所述验签令牌进行rsa非对称加密方式验证得到。
121.通过调用请求发送子模块以及调用子模块的配合,将所述配置信息表加密保存,在提取时,进行验签步骤,保证了配置信息表数据的安全,避免泄露。
122.进一步的,所述线程池管理装置100还包括历史数据获取模块、第一处理模块和第二处理模块;
123.所述历史数据获取模块,用于获取各所述接口对应的历史响应时间以及对应的线程池数量;
124.所述第一处理模块,用于根据各所述接口对应的历史响应时间,计算各所述接口的历史平均响应时间;
125.所述第二处理模块,用于根据各所述接口对应的线程池数量,对各所述接口的历史平均响应时间进行加权求和,得到所述目标响应时间。
126.通过历史数据获取模块、第一处理模块和第二处理模块的配合,对目标响应时间的计算,便于后续对接口对应线程池进行调整,使得各接口对应的响应时间变小,且消耗的资源保持较小
127.定时抽取模块102,用于根据所述配置信息表,定时获取各接口的响应时间以及各线程池的运行情况;
128.第一判断模块103,用于将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果;
129.进一步的,所述第一判断模块103包括计算子模块以及模型处理子模块;
130.所述计算子模块,用于根据各所述接口分别对应的多个响应时间,计算各所述接口的平均响应时间;
131.所述模型处理子模块,用于将所述各接口对应的响应时间、平均响应时间以及目标响应时间输入所述调整模型,得到所述调整结果,所述调整模型基于决策树模型训练得到。
132.通过计算子模块以及模型处理子模块的配合,利用决策树来训练得到调整模型,利用调整模型对响应时间等数据进行判断,得到对应的调整结果,实现提高请求的响应速度。
133.第二判断模块104,用于根据所述调整结果以及所述线程池的运行情况,确定各所述接口对应线程池的具体调整方案;
134.进一步的,所述第二判断模块104包括第一比对子模块、第一确定子模块以及第二确定子模块;
135.所述第一比对子模块,用于当所述调整结果为待调整时,将所述线程池的运行情况中的队列情况与第一预设阈值进行比对;
136.所述第一确定子模块,用于若所述队列情况小于等于所述第一预设阈值时,确定所述接口对应的线程池的具体调整方案为不调整;
137.所述第二确定子模块,用于若所述队列情况大于所述第一预设阈值时,确定所述接口对应的线程池的具体调整方案为增加线程池。
138.通过第一比对子模块、第一确定子模块以及第二确定子模块的配合,将调整结果与队列情况进行综合判断,提高了得到具体调整方案的效果,使得最终的具体调整方案,能在降低资源消耗的同时,提高对请求的响应速度。
139.进一步的,所述第二判断模块104包括第二比对子模块、第三确定子模块以及第四确定子模块;
140.所述第二比对子模块,用于当所述调整结果为可调整时,将所述线程池的运行情况中的队列情况与第二预设阈值进行比较;
141.所述第三确定子模块,用于若所述队列情况小于所述第二预设阈值时,确定所述接口对应的线程池的具体调整方案为减少线程池;
142.所述第四确定子模块,用于若所述队列情况大于等于所述第二预设阈值时,确定所述接口对应的线程池的具体调整方案为不调整。
143.通过第二比对子模块、第三确定子模块以及第四确定子模块的配合,将调整结果与队列情况进行综合判断,提高了得到具体调整方案的效果,使得最终的具体调整方案,能在降低资源消耗的同时,提高对请求的响应速度。
144.调整模块105,用于根据各所述接口对应线程池的具体调整方案,对所述线程池进行对应调整,并对所述配置信息表进行更新。
145.进一步的,所述调整模块105包括对应分配子模块以及对应处理子模块;
146.所述对应分配子模块,用于根据各所述接口对应线程池的具体调整方案,对所述线程池进行内部分配;;
147.所述对应处理子模块,用于若不存在闲置的线程池时,对缺少线程池的接口进行
分配新建的线程池处理;若存在闲置的线程池时,对所述闲置的线程池进行下线处理。
148.通过对应分配子模块以及对应处理子模块的配合,根据各接口对应的具体调整方案,对各接口对应的线程池进行对应调整,实现在保持消耗资源较低的情况下,提高对请求的响应速度。
149.通过采用上述装置,所述线程池管理装置100通过获取模块101、定时抽取模块102、第一判断模块103、第二判断模块104以及调整模块105的配合使用,通过获取配置信息表,根据所述配置信息表,定时获取配置信息表中各接口的响应时间以及各线程池的运行情况;将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果,再根据所述线程池的调整结果以及运行情况,确定各所述接口对应线程池的具体调整方案,以提高线程池资源的利用率,避免浪费,根据各所述接口对应线程池的具体调整方案,对线程池进行对应调整,并对所述配置信息表进行更新,实现在资源消耗保持较低的情况下,提高接口对应请求的响应速度。
150.本技术实施例还提供一种计算机设备。具体请参阅图5,图5为本实施例计算机设备基本结构框图。
151.所述计算机设备4包括通过系统总线相互通信连接存储器41、处理器42、网络接口43。需要指出的是,图中仅示出了具有组件41-43的计算机设备4,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。其中,本技术领域技术人员可以理解,这里的计算机设备是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路(application specific integrated circuit,asic)、可编程门阵列(field-programmable gate array,fpga)、数字处理器(digital signal processor,dsp)、嵌入式设备等。
152.所述计算机设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述计算机设备可以与用户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互。
153.所述存储器41至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,所述存储器41可以是所述计算机设备4的内部存储单元,例如该计算机设备4的硬盘或内存。在另一些实施例中,所述存储器41也可以是所述计算机设备4的外部存储设备,例如该计算机设备4上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。当然,所述存储器41还可以既包括所述计算机设备4的内部存储单元也包括其外部存储设备。本实施例中,所述存储器41通常用于存储安装于所述计算机设备4的操作系统和各类应用软件,例如线程池管理方法的计算机可读指令等。此外,所述存储器41还可以用于暂时地存储已经输出或者将要输出的各类数据。
154.所述处理器42在一些实施例中可以是中央处理器(central processing unit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器42通常用于控制所述计算机设备4的总体操作。本实施例中,所述处理器42用于运行所述存储器41中存储的计算机
可读指令或者处理数据,例如运行所述线程池管理方法的计算机可读指令。
155.所述网络接口43可包括无线网络接口或有线网络接口,该网络接口43通常用于在所述计算机设备4与其他电子设备之间建立通信连接。
156.本实施例通过处理器执行存储在存储器的计算机可读指令时实现如上述实施例线程池管理方法的步骤,通过获取配置信息表,根据所述配置信息表,定时获取配置信息表中各接口的响应时间以及各线程池的运行情况;将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果,再根据所述线程池的调整结果以及运行情况,确定各所述接口对应线程池的具体调整方案,以提高线程池资源的利用率,避免浪费,根据各所述接口对应线程池的具体调整方案,对线程池进行对应调整,并对所述配置信息表进行更新,实现在资源消耗保持较低的情况下,提高接口对应请求的响应速度。
157.本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令可被至少一个处理器执行,以使所述至少一个处理器执行如上述的线程池管理方法的步骤,通过获取配置信息表,根据所述配置信息表,定时获取配置信息表中各接口的响应时间以及各线程池的运行情况;将所述配置信息表中的目标响应时间与各所述接口的响应时间输入调整模型,通过所述调整模型对各所述接口对应的线程池进行调整判断,得到调整结果,再根据所述线程池的调整结果以及运行情况,确定各所述接口对应线程池的具体调整方案,以提高线程池资源的利用率,避免浪费,根据各所述接口对应线程池的具体调整方案,对线程池进行对应调整,并对所述配置信息表进行更新,实现在资源消耗保持较低的情况下,提高接口对应请求的响应速度。
158.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本技术各个实施例所述的方法。
159.本技术上述实施例的线程池管理装置、计算机设备、计算机可读存储介质具有与上述实施例的线程池管理方法相同的技术效果,在此不作展开。
160.显然,以上所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例,附图中给出了本技术的较佳实施例,但并不限制本技术的专利范围。本技术可以以许多不同的形式来实现,相反地,提供这些实施例的目的是使对本技术的公开内容的理解更加透彻全面。尽管参照前述实施例对本技术进行了详细的说明,对于本领域的技术人员来而言,其依然可以对前述各具体实施方式所记载的技术方案进行修改,或者对其中部分技术特征进行等效替换。凡是利用本技术说明书及附图内容所做的等效结构,直接或间接运用在其他相关的技术领域,均同理在本技术专利保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献