线程任务处理方法、装置、服务器及存储介质制造方法及图纸

技术编号:22467046 阅读:16 留言:0更新日期:2019-11-06 10:55
本发明专利技术实施例公开了一种线程任务处理方法、装置、服务器及存储介质,所述方法包括:获取任务队列,所述任务队列包括多个第一任务;判断所述第一任务是否被分配对应的线程池;若所述第一任务没被分配对应的线程池,获取所述第一任务的线程池配置参数;根据所述配置参数配置线程池,所述线程池包括多个第一线程;调用所述第一线程执行所述第一任务,并记录对应的执行结果。本发明专利技术实施例实现了多线程上传文件,实时记录线程任务的执行结果,提高多线程上传系统的稳定性。

Thread task processing method, device, server and storage medium

【技术实现步骤摘要】
线程任务处理方法、装置、服务器及存储介质
本专利技术实施例涉及文件传输领域,尤其涉及一种线程任务处理方法、装置、服务器及存储介质。
技术介绍
安全文件传送协议(SecureFileTransferProtocol,SFTP)为传输文件提供一种安全的网络加密方法。新资金方接入时接入侧技术同事与资金方确认SFTP连接数限制和所需要的线程数,在管理系统中配置资金方SFTP信息即可。开发中过程中需要用多线程去执行的时候,只调用多线程组件提供接口,由组件完成任务。由于企业业务发展较快,合作方越来越多,贷后业务相似度比较高,大批量的文件交互做单线程上传到资金方SFTP服务器,数据激增时导致文件上传不及时;多线程上传时需要定制化开发,每次有新资金方接入时需要重写程序来实现新任务的执行,非常影响企业的业务稳定。
技术实现思路
本专利技术实施例提供一种线程任务处理方法、装置、服务器及存储介质,以实现多线程上传文件,实时查询线程任务的执行结果,提高多线程上传系统的稳定性。第一方面,本专利技术实施例提供一种线程任务处理方法,包括:获取任务队列,所述任务队列包括多个第一任务;判断所述第一任务是否被分配对应的线程池;若所述第一任务没被分配对应的线程池,获取所述第一任务的线程池配置参数;根据所述配置参数配置线程池,所述线程池包括多个第一线程;调用所述第一线程执行所述第一任务,并记录对应的执行结果。可选的,所述获取配置参数包括:调用可视化界面获取用户输入的所述配置参数,所述配置参数包括:通道ID、最大支持线程数、优先级、调度频率、最大异常执行次数和结果通知方式中的一种或多种。可选的,所述根据所述配置参数配置线程池包括:根据所述通道ID和所述最大支持线程数初始化所述线程池。可选的,所述调用所述第一线程执行所述第一任务,包括:根据所述第一任务的调度频率和优先级获取第一线程;将所述第一任务放入所述第一线程中执行。可选的,所述记录对应的执行结果包括:判断所述第一线程中的第一任务是否执行成功;若所述第一线程中的第一任务执行失败,确定所述第一线程中的第一任务执行的失败次数;若所述失败次数小于或等于所述最大异常执行次数,则将所述第一任务重新加入所述任务队列等待执行。可选的,所述确定所述第一线程中的第一任务执行的失败次数之后,还包括:若所述失败次数大于所述最大异常执行次数,则根据所述结果通知方式反馈执行结果。可选的,所述记录对应的执行结果之后,还包括:输出能够实时查询所述执行结果的查询地址。第二方面,本专利技术实施例提供一种线程任务处理装置,包括:任务队列获取模块,用于获取任务队列,所述任务队列包括多个第一任务;线程配置判断模块,用于判断所述第一任务是否被分配对应的线程池;配置参数获取模块,用于若所述第一任务没被分配对应的线程池,获取所述第一任务的线程池配置参数;线程池配置模块,用于根据所述配置参数配置线程池,所述线程池包括多个第一线程;任务执行模块,用于调用所述第一线程执行所述第一任务,并记录对应的执行结果。第三方面,本专利技术实施例提供一种服务器,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本专利技术任意实施例所提供的线程任务处理方法。第四方面,本专利技术实施例提供一种计算机可读存储介质,其上存储被分配计算机程序,该程序被处理器执行时实现本专利技术任意实施例所提供的线程任务处理方法。本专利技术实施例在任务队列中的第一任务没有对应的线程池时,根据相应的配置参数配置线程池,使任务队列中的第一任务通过多线程执行,并记录线程任务执行的结果,实现了多线程上传文件,实时查询线程任务的执行结果,提高多线程上传系统的稳定性。附图说明图1为本专利技术实施例一提供的一种线程任务处理方法的流程示意图;图2为本专利技术实施例二提供的一种线程任务处理方法的流程示意图;图3为本专利技术实施例三提供的一种线程任务处理装置的结构示意图;图4为本专利技术实施例四提供的一种服务器的结构示意图。具体实施方式下面结合附图和实施例对本专利技术作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时处理可以被终止,但是还可以具有未包括在附图中的附加步骤。处理可以对应于方法、函数、规程、子例程、子程序等等。此外,术语“第一”、“第二”等可在本文中用于描述各种方向、动作、步骤或元件等,但这些方向、动作、步骤或元件不受这些术语限制。这些术语仅用于将第一个方向、动作、步骤或元件与另一个方向、动作、步骤或元件区分。术语“第一”、“第二”等不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本专利技术的描述中,“多个”、“批量”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。实施例一图1为本专利技术实施例一提供的一种线程任务处理方法的流程示意图,可适用于使用多线程上传文件,该方法可以由线程任务处理装置来执行,该装置可以采用软件和/或硬件的方式实现,并可集成在服务器。如图1所示,该方法包括:S110、获取任务队列,所述任务队列包括多个第一任务。具体的,任务队列是指存放待处理任务的队列,即任务队列中包含多个待处理的第一任务。第一任务可以是任意需要执行的任务类型,例如接口API请求、上传文件、下载文件等。S120、判断所述第一任务是否被分配对应的线程池。具体的,线程池是一种多线程处理形式,线程池中包含多个线程,这些线程用来执行任务队列中的第一任务。若当前第一任务在此前已经被执行过,那么说明已经存在相应的线程池,则只需将当前需要执行的第一任务放入已有线程池中的线程进行执行即可。若当前第一任务为一个新的任务类型,没有现有的线程池来执行该第一任务,则需要创建一个新的线程池,以使该第一任务能够执行。S130、若所述第一任务没被分配对应的线程池,获取所述第一任务的线程池配置参数。具体的,配置参数是用来创建新的线程池或执行第一任务的一些参数,包括通道ID、最大支持线程数、优先级、调度频率、最大异常执行次数和结果通知方式中的一种或多种。这些配置参数通过可视化界面由用户输入,在不重写程序的情况下可随时更改。本实施例中,通道ID是用来创建新的线程池的通道地址。最大支持线程数表示能够同时运行的线程的最大数量。优先级用来表示第一任务的优先程度。调度频率是指将第一任务从队列中放入线程池的线程中的频率。最大异常执行次数是允许第一任务执行失败的最大次数。结果通知方式则是线程任务执行失败时的通知方式。S140、根据所述配置参数配置线程池,所述线程池包括多个第一线程。具体的,获取配置参数后则进行线程池的配置,即创建一个新的线程池用来执行新的第一任务。线程池中包含多个第一线程,用来执行新的第一任务。可选的,根据配置参数配置线程池可以是:根据所述通道本文档来自技高网...

【技术保护点】
1.一种线程任务处理方法,其特征在于,包括:获取任务队列,所述任务队列包括多个第一任务;判断所述第一任务是否被分配对应的线程池;若所述第一任务没被分配对应的线程池,获取所述第一任务的线程池配置参数;根据所述配置参数配置线程池,所述线程池包括多个第一线程;调用所述第一线程执行所述第一任务,并记录对应的执行结果。

【技术特征摘要】
1.一种线程任务处理方法,其特征在于,包括:获取任务队列,所述任务队列包括多个第一任务;判断所述第一任务是否被分配对应的线程池;若所述第一任务没被分配对应的线程池,获取所述第一任务的线程池配置参数;根据所述配置参数配置线程池,所述线程池包括多个第一线程;调用所述第一线程执行所述第一任务,并记录对应的执行结果。2.如权利要求1所述的方法,其特征在于,所述获取配置参数包括:调用可视化界面获取用户输入的所述配置参数,所述配置参数包括:通道ID、最大支持线程数、优先级、调度频率、最大异常执行次数和结果通知方式中的一种或多种。3.如权利要求2所述的方法,其特征在于,所述根据所述配置参数配置线程池包括:根据所述通道ID和所述最大支持线程数初始化所述线程池。4.如权利要求2所述的方法,其特征在于,所述调用所述第一线程执行所述第一任务,包括:根据所述第一任务的调度频率和优先级获取第一线程;将所述第一任务放入所述第一线程中执行。5.如权利要求4所述的方法,其特征在于,所述记录对应的执行结果包括:判断所述第一线程中的第一任务是否执行成功;若所述第一线程中的第一任务执行失败,确定所述第一线程中的第一任务执行的失败次数;若所述失败次数小于或等于所述最大异常执行次数,则将所述第一任务重新加...

【专利技术属性】
技术研发人员:肖玉亮
申请(专利权)人:深圳市盟天科技有限公司
类型:发明
国别省市:广东,44

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

1