System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理领域,具体而言,涉及一种任务处理方法、装置、电子设备及存储介质。
技术介绍
1、系统之间通常采用消息队列中间件进行解耦和交互,然而对于任务的执行状态。任务发起端一般通过监听任务的执行结果来进行下一步操作。
2、当任务处理端的系统宕机,则会造成任务发起端任务阻塞,造成异常。若任务处理端执行较慢,任务在系统执行方执行阶段,任务发起端持续等待,导致系统资源浪费。因此,现有的任务处理方式,系统间交互任务执行状态无感知,从而会造成任务发起端的资源浪费。
技术实现思路
1、本专利技术的目的在于提供一种任务处理方法、装置、电子设备及存储介质,能够避免任务发起端的资源浪费。
2、为了实现上述目的,本申请实施例采用的技术方案如下:
3、第一方面,本申请实施例提供了一种任务处理方法,所述方法包括:将待处理任务发送至消息队列并对所述消息队列进行监听;
4、从所述消息队列中获取所述待处理任务的心跳数据,其中,所述心跳数据表征所述任务处理系统的任务处理端对所述待处理任务的处理状态,所述任务处理端将所述待处理任务的心跳数据发送至所述消息队列中;
5、基于所述心跳数据,对所述待处理任务进行任务保持或者从所述任务发起端的任务池中删除。
6、在可选的实施方式中,所述基于所述心跳数据,对所述待处理任务进行任务保持的步骤,包括:
7、确定所述心跳数据是否指示所述待处理任务位于所述任务处理端的任务池中;
9、判断所述待处理任务的处理时长是否超过预设时长;
10、若是,则对所述待处理任务的处理时长进行重置。
11、在可选的实施方式中,所述基于所述心跳数据,对所述待处理任务进从所述任务发起端的任务池中删除的步骤,包括:
12、若所述待处理任务位于所述任务处理端的任务池之外时,判断所述待处理任务的处理时长是否超过预设时长;
13、若是,则将所述待处理任务从所述任务发起端的任务池中删除。
14、在可选的实施方式中,所述方法还包括:
15、接收所述任务处理端发送的状态信息;
16、基于所述状态信息,判断是否向所述消息队列发送待处理任务。
17、在可选的实施方式中,所述状态信息包括任务堆积量,所述基于所述状态信息,判断是否向所述消息队列发送待处理任务的步骤,包括:
18、将所述任务堆积量与预设任务堆积量比较;
19、在所述任务堆积量大于或者等于所述预设任务堆积量时,则暂停向所述消息队列发送待处理任务。
20、在可选的实施方式中,所述状态信息包括任务处理速度,所述基于所述状态信息,判断是否向所述消息队列发送待处理任务的步骤,包括:
21、将所述任务处理速度与预设任务处理速度比较;
22、在所述任务处理速度大于或者等于所述预设任务处理速度时,则暂停向所述消息队列发送待处理任务。
23、第二方面,本申请实施例提供了一种任务处理装置,所述方法包括:
24、监听模块,用于将待处理任务发送至消息队列并对所述消息队列进行监听;
25、获取模块,用于从所述消息队列中获取所述待处理任务的心跳数据,其中,所述心跳数据表征所述任务处理系统的任务处理端对所述待处理任务的处理状态,所述任务处理端将所述待处理任务的心跳数据发送至所述消息队列中;
26、处理模块,用于基于所述心跳数据,对所述待处理任务进行任务保持或者从所述任务发起端的任务池中删除。
27、第三方面,本申请实施例提供了一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述任务处理方法的步骤。
28、第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述任务处理方法的步骤。
29、本申请具有以下有益效果:
30、本申请通过将待处理任务发送至消息队列并对消息队列进行监听,从消息队列中获取待处理任务的心跳数据,其中,心跳数据表征任务处理系统的任务处理端对待处理任务的处理状态,任务处理端将待处理任务的心跳数据发送至消息队列中,基于心跳数据,对待处理任务进行任务保持或者从任务发起端的任务池中删除。实现在任务发起端可以感知任务执行的处理状态,避免因宕机或其他异常造成任务持续等待,减少因超时或其他异常造成系统资源浪费。
本文档来自技高网...【技术保护点】
1.一种任务处理方法,应用于任务处理系统的任务发起端,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述心跳数据,对所述待处理任务进行任务保持的步骤,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述心跳数据,对所述待处理任务进从所述任务发起端的任务池中删除的步骤,包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述状态信息包括任务堆积量,所述基于所述状态信息,判断是否向所述消息队列发送待处理任务的步骤,包括:
6.根据权利要求4所述的方法,其特征在于,所述状态信息包括任务处理速度,所述基于所述状态信息,判断是否向所述消息队列发送待处理任务的步骤,包括:
7.一种任务处理装置,其特征在于,所述装置包括:
8.根据权利要求7所述的装置,其特征在于,所述处理模块具体用于:
9.一种电子设备,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现权
10.一种存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1-6中任一项所述方法的步骤。
...【技术特征摘要】
1.一种任务处理方法,应用于任务处理系统的任务发起端,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述心跳数据,对所述待处理任务进行任务保持的步骤,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述心跳数据,对所述待处理任务进从所述任务发起端的任务池中删除的步骤,包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述状态信息包括任务堆积量,所述基于所述状态信息,判断是否向所述消息队列发送待处理任务的步骤,包括:
...
【专利技术属性】
技术研发人员:贾香恩,陈杰,方超,龙清廷,
申请(专利权)人:宁波三星医疗电气股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。