线程池防溢出的方法、装置、电子设备和存储介质制造方法及图纸

技术编号:35696171 阅读:12 留言:0更新日期:2022-11-23 14:47
本公开提供了一种线程池防溢出的方法、装置、电子设备和存储介质,可用于数据处理技术领域或金融领域,该方法包括:根据交易任务的交易请求关联的交易特征信息,生成与交易任务相关联的交易识别信息,交易识别信息用于确定线程池中交易任务的交易耗时;响应主线程队列的队列数目大于第一设定队列数目的指令,将主线程池中的第一超时交易任务转移至从线程队列,主线程队列与主线程池相关联,从线程队列与从线程池相关联,第一超时交易任务的交易耗时大于第一设定时长;响应从线程队列的队列数目大于第二设定队列数目的指令,将从线程池中的第二超时交易任务从从线程池中清除,第二超时交易任务的交易耗时大于第二设定时长。时交易任务的交易耗时大于第二设定时长。时交易任务的交易耗时大于第二设定时长。

【技术实现步骤摘要】
线程池防溢出的方法、装置、电子设备和存储介质


[0001]本公开涉及数据处理
,具体涉及一种线程池防溢出的方法、装置、电子设备和存储介质。

技术介绍

[0002]随着信息技术的发展,针对大量的交易请求进行处理时,需要处理器具有较好的处理能力,在处理交易请求时,一般采用线程池的方式对提交到线程池的交易请求进行处理,线程池具有设定的核心线程数上限,该核心线程数上限可以表征该线程池的最大处理能力,当线程池处理的任务中有较多的异常任务,例如无反应的任务或者反馈较慢的任务,会严重影响到线程池的其他正常任务的处理。现有技术中针对线程池超过核心线程数后,即线程池溢出后,则无法再继续处理其他任务,直接拒绝相应的交易请求,由此,线程池中存在大量的异常任务,导致正常的交易任务也无法正常返回,影响正常交易任务的执行,造成效率低下。

技术实现思路

[0003]有鉴于此,本公开提供一种线程池防溢出的方法、装置、电子设备和存储介质,至少可以实现防止线程池溢出,保证主线程池处理正常交易任务,从线程池处理交易耗时较长的交易任务,将不同的任务进行分开处理,可以有效提高线程池的工作效率,同时保证正常交易任务的处理。
[0004]本公开的第一方面提供了一种线程池防溢出的方法,所述线程池包括主线程池和从线程池,所述方法包括:根据交易任务的交易请求关联的交易特征信息,生成与所述交易任务相关联的交易识别信息,所述交易识别信息用于确定所述线程池中交易任务的交易耗时;响应主线程队列的队列数目大于第一设定队列数目的指令,将所述主线程池中的第一超时交易任务转移至从线程队列,所述主线程队列与所述主线程池相关联,所述从线程队列与所述从线程池相关联,所述第一超时交易任务的交易耗时大于第一设定时长;响应所述从线程队列的队列数目大于第二设定队列数目的指令,将所述从线程池中的第二超时交易任务从所述从线程池中清除,所述第二超时交易任务的交易耗时大于第二设定时长。
[0005]在本公开的一些示例性实施例中,所述根据交易任务的交易请求关联的交易特征信息,生成与所述交易任务相关联的交易识别信息,包括:获取与所述交易任务的交易请求关联的所述交易特征信息;以及通过散列函数对所述交易特征信息进行处理,生成与所述交易任务相关联的交易识别信息。
[0006]在本公开的一些示例性实施例中,所述的方法还包括:在响应主线程队列的队列数目大于第一设定队列数目的指令之后,根据所述交易识别信息,对所述主线程池中的所有交易任务的交易耗时进行统计,生成第一统计结果;根据所述第一统计结果和所述第一设定时长,从所述主线程池中的所有交易任务中确定出第一超时交易任务。
[0007]在本公开的一些示例性实施例中,所述的方法还包括:在响应所述从线程队列的
队列数目大于第二设定队列数目的指令之后,根据所述交易识别信息,对所述从线程池中的所有交易任务的交易耗时进行统计,生成第二统计结果;根据所述第二统计结果和所述第二设定时长,从所述从线程池中的所有交易任务中确定出第二超时交易任务。
[0008]在本公开的一些示例性实施例中,所述将所述主线程池中的第一超时交易任务转移至从线程队列,包括:根据确定的第一超时交易任务,获取所述主线程池中与所述第一超时交易任务相关联的第一处理信息;以及将所述第一超时交易任务及所述第一处理信息转移至所述从线程池的从线程队列。
[0009]在本公开的一些示例性实施例中,所述的方法还包括:根据确定的所述第一超时交易任务,从所述主线程队列中确定出与所述第一超时交易任务属于同一类别的同类交易任务;将所述同类交易任务转移至所述从线程队列。
[0010]在本公开的一些示例性实施例中,所述将所述从线程池中的第二超时交易任务从所述从线程池中清除,包括:根据确定的第二超时交易任务,从所述从线程池中确定与所述第二超时交易任务相关联的第二处理信息;将所述第二超时交易任务以及所述第二处理信息从所述线程池中清除。
[0011]在本公开的一些示例性实施例中,所述的方法还包括:对所述从线程池中的交易任务进行定时轮询,并将所述交易任务的交易耗时大于第三设定时长的交易任务进行清除。
[0012]在本公开的第二方面,提供了一种线程池防溢出的装置,所述线程池包括主线程池和从线程池,所述装置包括:生成模块,配置为根据交易任务的交易请求关联的交易特征信息,生成与所述交易任务相关联的交易识别信息,所述交易识别信息用于确定所述线程池中交易任务的交易耗时;第一响应模块,配置为响应主线程队列的队列数目大于第一设定队列数目的指令,将所述主线程池中的第一超时交易任务转移至从线程队列,所述主线程队列与所述主线程池相关联,所述从线程队列与所述从线程池相关联,所述第一超时交易任务的交易耗时大于第一设定时长;第二响应模块,配置为响应所述从线程队列的队列数目大于第二设定队列数目的指令,将所述从线程池中的第二超时交易任务从所述从线程池中清除,所述第二超时交易任务的交易耗时大于第二设定时长。
[0013]在本公开的一些示例性实施例中,所述生成模块包括生成单元,所述生成单元配置为:获取与所述交易任务的交易请求关联的所述交易特征信息;以及通过散列函数对所述交易特征信息进行处理,生成与所述交易任务相关联的交易识别信息。
[0014]在本公开的一些示例性实施例中,线程池防溢出的装置还包括第一统计模块,所述第一统计模块配置为:在响应主线程队列的队列数目大于第一设定队列数目的指令之后,根据所述交易识别信息,对所述主线程池中的所有交易任务的交易耗时进行统计,生成第一统计结果;根据所述第一统计结果和所述第一设定时长,从所述主线程池中的所有交易任务中确定出第一超时交易任务。
[0015]在本公开的一些示例性实施例中,线程池防溢出的装置还包括第二统计模块,所述第二统计模块配置为:在响应所述从线程队列的队列数目大于第二设定队列数目的指令之后,根据所述交易识别信息,对所述从线程池中的所有交易任务的交易耗时进行统计,生成第二统计结果;根据所述第二统计结果和所述第二设定时长,从所述从线程池中的所有交易任务中确定出第二超时交易任务。
[0016]在本公开的一些示例性实施例中,第一响应模块还包括第一响应单元,所述第一响应单元配置为:根据确定的第一超时交易任务,获取所述主线程池中与所述第一超时交易任务相关联的第一处理信息;以及将所述第一超时交易任务及所述第一处理信息转移至所述从线程池的从线程队列。
[0017]在本公开的一些示例性实施例中,线程池防溢出的装置还包括确定模块,所述确定模块配置为:根据确定的所述第一超时交易任务,从所述主线程队列中确定出与所述第一超时交易任务属于同一类别的同类交易任务;将所述同类交易任务转移至所述从线程队列。
[0018]在本公开的一些示例性实施例中,第二响应模块还包括第二响应单元,所述第二响应单元配置为:根据确定的第二超时交易任务,从所述从线程池中确定与所述第二超时交易任务相关联的第二处理信息;将所述第二超时交易任务以及所述第二处理信息从所述线程池中清除。...

【技术保护点】

【技术特征摘要】
1.一种线程池防溢出的方法,所述线程池包括主线程池和从线程池,所述方法包括:根据交易任务的交易请求关联的交易特征信息,生成与所述交易任务相关联的交易识别信息,所述交易识别信息用于确定所述线程池中交易任务的交易耗时;响应主线程队列的队列数目大于第一设定队列数目的指令,将所述主线程池中的第一超时交易任务转移至从线程队列,所述主线程队列与所述主线程池相关联,所述从线程队列与所述从线程池相关联,所述第一超时交易任务的交易耗时大于第一设定时长;响应所述从线程队列的队列数目大于第二设定队列数目的指令,将所述从线程池中的第二超时交易任务从所述从线程池中清除,所述第二超时交易任务的交易耗时大于第二设定时长。2.根据权利要求1所述的方法,其中,所述根据交易任务的交易请求关联的交易特征信息,生成与所述交易任务相关联的交易识别信息,包括:获取与所述交易任务的交易请求关联的所述交易特征信息;以及通过散列函数对所述交易特征信息进行处理,生成与所述交易任务相关联的交易识别信息。3.根据权利要求1所述的方法,其中,还包括:在响应主线程队列的队列数目大于第一设定队列数目的指令之后,根据所述交易识别信息,对所述主线程池中的所有交易任务的交易耗时进行统计,生成第一统计结果;根据所述第一统计结果和所述第一设定时长,从所述主线程池中的所有交易任务中确定出第一超时交易任务。4.根据权利要求1所述的方法,其中,还包括:在响应所述从线程队列的队列数目大于第二设定队列数目的指令之后,根据所述交易识别信息,对所述从线程池中的所有交易任务的交易耗时进行统计,生成第二统计结果;根据所述第二统计结果和所述第二设定时长,从所述从线程池中的所有交易任务中确定出第二超时交易任务。5.根据权利要求1所述的方法,其中,所述将所述主线程池中的第一超时交易任务转移至从线程队列,包括:根据确定的第一超时交易任务,获取所述主线程池中与所述第一超时交易任务相关联的第一处理信息;以及将所述第一超时交易任务及所述第一处理信息转移...

【专利技术属性】
技术研发人员:谢波程春生龚展鸿刘晓舟
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1