本发明专利技术提供了一种任务批处理方法、装置、电子设备和存储介质,通过接收生产模块发送的至少一条任务,生产模块用于产生任务;将任务存储至调度者模块的任务队列中;在任务队列内存储的多个任务满足调度策略时,将满足调度策略的多个任务发送至消费者模块,调度策略为根据生产者模块发送任务的频率进行动态调整;通过消费者模块对满足调度策略的多个任务进行批处理。本发明专利技术提供的技术方案通过生产模块、调度者模块和消费者模块完成对任务进行批处理的过程,能够适用于多种场景。并且在调度者模块中的调度策略是可以进行动态调整的,从而提升了任务批处理的灵活性。提升了任务批处理的灵活性。提升了任务批处理的灵活性。
【技术实现步骤摘要】
任务批处理方法、装置、电子设备和存储介质
[0001]本专利技术实施例计算机
,具体涉及一种任务批处理方法、装置、电子设备和存储介质。
技术介绍
[0002]随着互联网的发展,在用户使用互联网的过程中会产生大量的数据或者任务,在对产生的数据或任务进行处理之后,可以得到对应的处理结果。对于数据或任务进行处理时,通常使用批处理的方式,以提高处理的效率,减少用户等待的时间。其中,批处理可以将短小、频繁的任务,合并成一个大任务来批量处理。
[0003]目前,对于不同的使用场景,技术人员通过编写与使用场景对应的使用代码并设置批处理条件,例如,在数据或任务的数量达到预设阈值时,对该数据或任务进行批处理,从而提升处理效率。
[0004]但是,现有技术中技术人员针对不同的使用场景分别编写不同的代码,需要花费大量的时间,且对于任务批处理的条件是固定的,在进行任务批处理的过程中无法进行修改,使得任务批处理的灵活性较差。
技术实现思路
[0005]为了解决现有技术中的上述问题,即为了解决现有的任务批处理方法的灵活性较差的问题,本专利技术实施例提供了一种任务批处理方法、装置、电子设备和存储介质。
[0006]本专利技术实施例提供了一种任务批处理方法,所述任务批处理方法包括:
[0007]接收生产模块发送的至少一条任务,所述生产模块用于产生任务。
[0008]将所述任务存储至调度者模块的任务队列中。
[0009]在所述任务队列内存储的多个任务满足调度策略时,将满足调度策略的多个任务发送至消费者模块,所述调度策略为根据生产者模块发送任务的频率进行动态调整。
[0010]通过所述消费者模块接收所述满足调度策略的多个任务,并对所述多个任务进行批处理。
[0011]可选的,所述调度策略中包括预设数量;所述在所述任务队列内存储的所述任务满足调度策略时,将满足调度策略的任务发送至消费者模块,包括:
[0012]判断所述任务队列内存储的所述任务的数量是否大于或等于所述预设数量。
[0013]若所述任务的数量大于或等于所述预设数量,则按照接收所述任务的顺序,将所述任务队列内存储的前预设数量个所述任务发送至消费者模块。
[0014]可选的,所述调度策略中包括预设时间,所述方法还包括:
[0015]若所述任务的数量小于预设数量,则判断当前接收任务的时刻与上一次将所述任务发送至消费者模块的时刻之间的时间间隔是否等于所述预设时间。
[0016]若所述时间间隔等于所述预设时间,则将预设时间内接收到的所述任务队列内存储的所述任务发送至消费者模块。
[0017]可选的,所述任务队列包括阻塞队列和远程字典服务中的至少一种。
[0018]可选的,所述通过所述消费者模块接收所述满足调度策略的多个任务,并对所述多个任务进行批处理,包括:
[0019]通过所述消费模块接收所述满足调度策略的多个任务,并在所述消费接口内对所述多个任务进行批处理。
[0020]可选的,所述方法还包括:
[0021]对接收的生产模块发送的所述任务的数量,和/或,接收时间进行实时监测。
[0022]本专利技术实施例还提供了一种任务批处理装置,包括:
[0023]接收模块,用于接收生产模块发送的至少一条任务,所述生产模块用于产生任务。
[0024]存储模块,用于将所述任务存储至调度者模块的任务队列中。
[0025]处理模块,用于在所述任务队列内存储的多个任务满足调度策略时,将满足调度策略的多个任务发送至消费者模块,所述调度策略为根据生产者模块发送任务的频率进行动态调整。
[0026]所述处理模块,还用于通过所述消费者模块接收所述满足调度策略的多个任务,并对所述多个任务进行批处理。
[0027]可选的,所述调度策略中包括预设数量;所述所述处理模块,具体用语判断所述任务队列内存储的所述任务的数量是否大于或等于所述预设数量;在所述任务的数量大于或等于所述预设数量时,按照接收所述任务的顺序,将所述任务队列内存储的前预设数量个所述任务发送至消费者模块。
[0028]可选的,所述调度策略中包括预设时间,所述处理模块,还用于在所述任务的数量小于预设数量时,判断当前接收任务的时刻与上一次将所述任务发送至消费者模块的时刻之间的时间间隔是否等于所述预设时间;在所述时间间隔等于所述预设时间时,将预设时间内接收到的所述任务队列内存储的所述任务发送至消费者模块。
[0029]可选的,所述任务队列包括阻塞队列和远程字典服务中的至少一种。
[0030]可选的,所述处理模块,具体用于通过所述消费模块接收所述满足调度策略的多个任务,并在所述消费接口内对所述多个任务进行批处理。
[0031]可选的,所述装置还包括监测模块,所述监测模块,用于对接收的生产模块发送的所述任务的数量,和/或,接收时间进行实时监测。
[0032]本专利技术实施例还提供了一种电子设备,该电子设备包括:处理器,以及与所述处理器通信连接的存储器。
[0033]所述存储器存储计算机执行指令。
[0034]所述处理器执行所述存储器存储的计算机执行指令,实现上述任一种优选技术方案中所述的任务批处理方法。
[0035]本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述任一种优选技术方案中所述的任务批处理方法。
[0036]本专利技术实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,实现上述任一种优选技术方案中所述的任务批处理方法。
[0037]本领域技术人员能够理解的是,本专利技术实施例提供的一种任务批处理方法、装置、
电子设备和存储介质,通过接收生产模块发送的至少一条任务,生产模块用于产生任务;将任务存储至调度者模块的任务队列中;在任务队列内存储的多个任务满足调度策略时,将满足调度策略的多个任务发送至消费者模块,调度策略为根据生产者模块发送任务的频率进行动态调整;通过消费者模块对满足调度策略的多个任务进行批处理。本专利技术提供的技术方案通过接收生产模块发送的任务,通过调度者模块对任务进行存储和管理,并在存储的多个任务满足调度策略时,将任务发送至消费者模块进行批处理,能够适用于多种场景,不需要技术人员根据固定的场景编写相应的代码,节省了大量的时间,提升了任务批处理的效率和灵活性。此外,调度策略可以进行动态调整,即可以在批量处理的过程中对调度策略进行调整,从而进一步提升了任务批处理的灵活性。
附图说明
[0038]图1为本专利技术实施例提供的一种任务批处理方法的流程示意图;
[0039]图2为本专利技术实施例提供的一种任务批处理方法的框架示意图;
[0040]图3为本专利技术实施例提供的一种任务批处理装置的结构示意图;
[0041]图4为本专利技术实施例提供的一种电子设备结构示意图。
具体实施方式
[00本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种任务批处理方法,其特征在于,所述方法包括:接收生产模块发送的至少一条任务,所述生产模块用于产生任务;将所述任务存储至调度者模块的任务队列中;在所述任务队列内存储的多个任务满足调度策略时,将满足调度策略的多个任务发送至消费者模块,所述调度策略为根据生产者模块发送任务的频率进行动态调整;通过所述消费者模块接收所述满足调度策略的多个任务,并对所述多个任务进行批处理。2.根据权利要求1所述的方法,其特征在于,所述调度策略中包括预设数量;所述在所述任务队列内存储的所述任务满足调度策略时,将满足调度策略的任务发送至消费者模块,包括:判断所述任务队列内存储的所述任务的数量是否大于或等于所述预设数量;若所述任务的数量大于或等于所述预设数量,则按照接收所述任务的顺序,将所述任务队列内存储的前预设数量个所述任务发送至消费者模块。3.根据权利要求2所述的方法,其特征在于,所述调度策略中包括预设时间,所述方法还包括:若所述任务的数量小于预设数量,则判断当前接收任务的时刻与上一次将所述任务发送至消费者模块的时刻之间的时间间隔是否等于所述预设时间;若所述时间间隔等于所述预设时间,则将预设时间内接收到的所述任务队列内存储的所述任务发送至消费者模块。4.根据权利要求1
‑
3任一项所述的方法,其特征在于,所述任务队列包括阻塞队列和远程字典服务中的至少一种。5.根据权利要求1所述的方法,其特征在于,通过所述消费者模块接收所述满足调度策略的多个任务,并对所述多个任务进行批...
【专利技术属性】
技术研发人员:王武,
申请(专利权)人:海尔智家股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。