CN110032438A - 延时任务执行方法、装置及电子设备 - Google Patents

延时任务执行方法、装置及电子设备 Download PDF

Info

Publication number
CN110032438A
CN110032438A CN201910332861.2A CN201910332861A CN110032438A CN 110032438 A CN110032438 A CN 110032438A CN 201910332861 A CN201910332861 A CN 201910332861A CN 110032438 A CN110032438 A CN 110032438A
Authority
CN
China
Prior art keywords
information
delayed tasks
task
target information
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910332861.2A
Other languages
English (en)
Other versions
CN110032438B (zh
Inventor
黄添来
贾利阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Gao Road Collection Education Technology Co Ltd
Original Assignee
Beijing Gao Road Collection Education Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Gao Road Collection Education Technology Co Ltd filed Critical Beijing Gao Road Collection Education Technology Co Ltd
Priority to CN201910332861.2A priority Critical patent/CN110032438B/zh
Publication of CN110032438A publication Critical patent/CN110032438A/zh
Application granted granted Critical
Publication of CN110032438B publication Critical patent/CN110032438B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本申请涉及信息技术领域,涉及一种延时任务执行方法、装置及电子设备。该延时任务执行方法包括:按预设时间间隔依次轮询循环队列中包括的多个槽位,槽位用于储存延时任务的触发信息,触发信息包括剩余轮询次数和任务处理信息;针对每个正在被询问的槽位,将槽位中储存的延时任务的触发信息作为目标信息,并判断目标信息中剩余轮询次数的值是否为约定数值;若目标信息中剩余轮询次数的值为约定数值,则从多个节点中选取出目标节点,以使目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务。通过本申请实施例提供的延时任务执行方法、装置及电子设备能够确保延时任务的准时执行。

Description

延时任务执行方法、装置及电子设备
技术领域
本申请涉及信息技术领域,具体而言,涉及一种延时任务执行方法、装置及电子设备。
背景技术
在应用开发过程中,经常会遇到需要在指定时间到来时去执行相应延时任务的业务需求。例如,订单提交之后,若超过指定支付时间未支付成功,则需要将该订单删除,再例如,订单完成之后,若超过指定评价时间未及时评价,则默认将该订单的评价设置为五星好评,又例如,代金券等虚拟网络资源在被激活之后,若超过指定使用时间未被使用,则自动作废。
目前,针对此类业务需求,在一些实施方式中,会在接收到延时任务之后,将延时任务的触发信息存储于数据库,同时,通过定时任务周期性的去扫描该数据库,以检测是否存在需要执行的延时任务,若存在需要执行的延时任务,则一次性批量执行。这种方法存在的问题是,会导致延时任务的执行时间滞后。因此,如何确保延时任务能够准时执行,成为信息技术领域亟待解决的技术难题。
发明内容
本申请实施例的目的在于提供一种延时任务执行方法、装置及电子设备,用以实现确保延时任务能够准时执行的技术效果。
第一方面,本申请实施例提供了一种延时任务执行方法,所述延时任务执行方法,包括:
按预设时间间隔依次轮询循环队列中包括的多个槽位,所述槽位用于储存延时任务的触发信息,所述触发信息包括剩余轮询次数和任务处理信息;
针对每个正在被询问的槽位,将所述槽位中储存的延时任务的触发信息作为目标信息,并判断所述目标信息中剩余轮询次数的值是否为约定数值;
若所述目标信息中剩余轮询次数的值为所述约定数值,则从多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
本申请实施例提供的延时任务执行方法,通过按预设时间间隔依次轮询循环队列中包括的多个槽位,针对每个正在被询问的槽位,将该槽位中储存的延时任务的触发信息作为目标信息,并在判断出目标信息中剩余轮询次数的值为约定数值时,从多个节点中选取出目标节点,以使目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务,这种延时任务执行方法采用了循环队列实现延时任务的触发控制,因此,延时任务的执行是主动触发的,相对于现有技术中,通过定时任务周期性的去扫描数据库,以检测是否存在需要执行的延时任务,若存在需要执行的延时任务,则一次性批量执行的实施方式而言,能够确保延时任务的准时执行。
结合第一方面,本申请实施例提供了第一方面的第一种可能的实施方式,其中,所述若所述目标信息中剩余轮询次数的值为所述约定数值,则从多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务,包括:
若所述目标信息中剩余轮询次数的值为所述约定数值,则获得服务器集群包括的多个节点中的每个节点的资源占用系数;
根据每个节点的资源占用系数,从所述多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
进一步地,本申请实施例提供的延时任务执行方法,还可以获得服务器集群包括的多个节点中的每个节点的资源占用系数,并根据多个节点中的每个节点的资源占用系数,从多个节点中选取出目标节点。这样,便能够确保目标节点在被选取出时,具有较强的处理能力,基于此,在目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务时,便能够确保延时任务具有较高的执行效率,以实现确保延时任务能够准时执行的技术效果。
结合第一方面第一种可能的实施方式,本申请实施例提供了第二种可能的实施方式,其中,所述根据每个节点的资源占用系数,从所述多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务,包括:
获得所述多个节点中的每个节点的地址信息;
针对每个节点,以所述节点的资源占用系数为值,所述节点的地址信息为键,通过预设选举算法获得每个节点的选举参考数据;
根据所述多个节点中每个节点的选举参考数据,从所述多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
进一步地,本申请实施例提供的延时任务执行方法,还可以在获得服务器集群包括的多个节点中的每个节点的资源占用系数的同时,获得多个节点中的每个节点的地址信息,针对每个节点,以该节点的资源占用系数为值,所述节点的地址信息为键,通过预设选举算法获得每个节点的选举参考数据,此后,根据多个节点中每个节点的选举参考数据,从多个节点中选取出目标节点。这样,便能够确保目标节点在执行与目标信息对应的延时任务的过程中,能够始终维持较强的处理能力,基于此,在目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务时,便能够确保延时任务具有较高的执行效率,以实现确保延时任务能够准时执行的技术效果。
结合第一方面,本申请实施例提供了第一方面的第三种可能的实施方式,其中,所述若所述目标信息中剩余轮询次数的值为所述约定数值,则从多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务,包括:
若所述目标信息中剩余轮询次数的值为所述约定数值,则从服务器集群包括的多个节点中选取出目标节点,以使所述目标节点为与所述目标信息对应的延时任务添加任务锁,并根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务;
在所述延时任务执行完成之后,使所述目标节点释放所述任务锁,并将所述延时任务的触发信息从所述槽位中删除。
进一步地,本申请实施例提供的延时任务执行方法,还可以在从服务器集群包括的多个节点中选取出目标节点之后,使目标节点为与目标信息对应的延时任务添加任务锁,并根据目标信息中的任务处理信息执行与目标信息对应的延时任务,在延时任务执行完成之后,使目标节点释放任务锁,并将延时任务的触发信息从槽位中删除。这样,在目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务时,便可以避免该延时任务被服务器集群中除目标节点以外的其他节点重复执行,也即,避免该延时任务占用服务器集群中除目标节点以外的其他节点的资源,这样,服务器集群中除目标节点以外的其他节点便可以在目标节点执行该延时任务时,高效地执行其他延时任务,以实现确保延时任务能够准时执行的技术效果。
结合第一方面,本申请实施例提供了第一方面的第四种可能的实施方式,其中,所述针对每个正在被询问的槽位,将所述槽位中储存的触发信息作为目标信息,并判断所述目标信息中剩余轮询次数的值是否为约定数值之后,所述延时任务执行方法,还包括:
若所述目标信息中剩余轮询次数的值未达到所述约定数值,则对所述目标信息中的剩余轮询次数进行更新。
结合第一方面,本申请实施例提供了第一方面的第五种可能的实施方式,其中,所述延时任务执行方法,还包括:
接收待执行任务之后,获得所述待执行任务的任务生成信息,所述任务生成信息包括待执行任务的延时时长和任务处理信息,所述待执行任务为生成的任一延时任务;
根据所述延时时长、所述循环队列中槽位的数量、所述预设时间间隔,以及正在被询问的槽位,获得与所述待执行任务对应的剩余轮询次数和槽位,并将与所述待执行任务对应的槽位作为目标槽位;
将所述剩余轮询次数和所述任务处理信息作为所述待执行任务的触发信息,并储存于所述目标槽位。
结合第一方面第五种可能的实施方式,本申请实施例提供了第六种可能的实施方式,其中,所述接收待执行任务之后,获得所述待执行任务的任务生成信息,包括:
接收待执行任务之后,获得所述待执行任务的指定执行时间和执行逻辑;
获得所述指定执行时间与当前时间的时间差值,作为所述待执行任务的延时时长;
将所述执行逻辑储存于预设分布式储存系统后,创建所述执行逻辑的检索标识,以将所述检索标识作为所述任务处理信息;
将所述延时时长和所述任务处理信息作为所述待执行任务的任务生成信息。
进一步地,本申请实施例提供的延时任务执行方法,还可以在接收待执行任务之后,获得待执行任务的指定执行时间和执行逻辑,并获得指定执行时间与当前时间的时间差值,将该时间差值作为待执行任务的延时时长,将执行逻辑储存于预设分布式储存系统,并创建执行逻辑的检索标识,将该检索标识作为任务处理信息,再将延时时长和任务处理信息作为待执行任务的任务生成信息。这样,不仅可以降低循环队列的空间占用率,同时,由于预设分布式储存系统提供的分布式数据存储方式具有高可靠性特点,并且能够提供高吞吐量的数据访问,因此,将执行逻辑储存于预设分布式储存系统中,便能够避免执行逻辑丢失,以确保执行逻辑的存储安全,同时,能够通过提供高吞吐量的数据确保待执行任务能够准时执行。
第二方面,本申请实施例还提供了一种延时任务执行装置,所述延时任务执行装置,包括:
轮询模块,用于按预设时间间隔依次轮询循环队列中包括的多个槽位,所述槽位用于储存延时任务的触发信息,所述触发信息包括剩余轮询次数和任务处理信息;
判断模块,用于针对每个正在被询问的槽位,将所述槽位中储存的延时任务的触发信息作为目标信息,并判断所述目标信息中剩余轮询次数的值是否为约定数值;
执行模块,用于在所述目标信息中剩余轮询次数的值为所述约定数值时,从多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
第三方面,本申请实施例还提供一种电子设备,所述电子设备包括处理器和存储器,所述存储器上存储有计算机程序,所述处理器用于执行所述存储器中的所述计算机程序,以实现上述第一方面,或第一方面的任一种可能的实施方式中提供的延时任务执行方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被执行时,可实现上述第一方面,或第一方面的任一种可能的实施方式中提供的延时任务执行方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种电子设备的示意性结构框图。
图2为本申请实施例提供的一种延时任务执行方法的流程图。
图3为本申请实施例提供的延时任务执行方法的另一部分流程图。
图4为本申请实施例提供的一种环形阵列的示意性结构图。
图5为本申请实施例提供的一种延时任务执行装置的示意性结构框图。
图标:100-电子设备;110-延时任务执行装置;111-轮询模块;112-判断模块;113-执行模块;120-处理器;130-存储器。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参阅图1,为本申请实施例提供的一种应用延时任务执行方法及装置的电子设备100的示意性结构框图。进一步地,本申请实施例中,电子设备100包括延时任务执行装置110、处理器120和存储器130。
处理器120和存储器130之间直接或间接地电性连接,以实现数据的传输或交互,例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。延时任务执行装置110包括至少一个可以软件或固件(Firmware)的形式存储在存储器130中或固化在电子设备100的操作系统(Operating System,OS)中的软件模块。处理器120用于执行存储器130中存储的可执行模块,例如,延时任务执行装置110所包括的软件功能模块及计算机程序等。处理器120可以在接收到执行指令后,执行计算机程序。
其中,处理器120可以是一种集成电路芯片,具有信号处理能力。处理器120也可以是通用处理器,例如,可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、分立门或晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。此外,通用处理器可以是微处理器或者任何常规处理器等。
此外,存储器130可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦可编程序只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦编程只读存储器Electric Erasable Programmable Read-Only Memory,EEPROM)等。存储器130用于存储程序,处理器120在接收到执行指令后,执行该程序。
应当理解,图1所示的结构仅为示意,本申请实施例提供的电子设备100还可以具有比图1更少或更多的组件,或是具有与图1所示不同的配置。此外,图1所示的各组件可以通过软件、硬件或其组合实现。
请参阅图2,图2为本申请实施例提供的延时任务执行方法的流程示意图,该方法应用于图1所示的电子设备100。所应说明的是,本申请实施例提供的延时任务执行方法不以图2及以下所示的顺序为限制,以下结合图2对延时任务执行方法的具体流程及步骤进行详细阐述。
步骤S110,按预设时间间隔依次轮询循环队列中包括的多个槽位,槽位用于储存延时任务的触发信息,触发信息包括剩余轮询次数和任务处理信息。
需要说明的是,本申请实施例中,循环队列即为顺序循环队列,是通过为顺序队列所使用的存储空间创建逻辑上的首尾连接关系形成的,例如,可以采用环形队列,而循环队列中包括的槽位(slot)则为环形阵列所使用的存储空间。预设时间间隔是指从一个槽位到下一个槽位的时间间隔,也可以称为走位间隔。示例性的,每个槽位中存储的延时任务的触发信息可以以任务链表(taskLink)的形式存储。其中,触发信息中的剩余轮询次数表示对应的延时任务在当前时刻距离被执行时间需要等待的轮询次数,任务处理信息可以包括延时任务的元(meta)信息(可以理解为包括执行该延时任务所需的关键信息以及处理算子信息,算子可以理解为该延时任务的执行逻辑)。
步骤S120,针对每个正在被询问的槽位,将槽位中储存的延时任务的触发信息作为目标信息,并判断目标信息中剩余轮询次数的值是否为约定数值。本申请实施例中,约定数值为0,但不限于0。
步骤S130,若目标信息中剩余轮询次数的值为约定数值,则从多个节点中选取出目标节点,以使目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务。
需要说明的是,本申请实施例中,若目标信息中剩余轮询次数的值未达到约定数值,则对目标信息中的剩余轮询次数进行更新,例如,对目标信息中的剩余轮询次数进行减1操作,以获得新的剩余轮询次数。
回到上述步骤S130,本申请实施例中,该步骤S130可以包括以下步骤:当目标信息中剩余轮询次数的值为约定数值时,可以获得服务器集群包括的多个节点中的每个节点的资源占用系数,再根据每个节点的资源占用系数,从多个节点中选取出目标节点,以使目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务。可以理解的是,本申请实施例中,节点为服务器集群中包括的任一服务器。
针对多个节点中的每个节点,可以获得该节点正在执行的任务数量、该节点的系统资源使用率,系统资源使用率可以包括该节点的CPU使用率,以及该节点的内存使用率,再根据该节点正在执行的任务数量、该节点的CPU使用率,以及该节点的内存使用率,获得该节点的资源占用系数。示例性的,针对多个节点中的每个节点,该节点的资源占用系数可以通过以下计算规则获得:
W=(C+1)*R1*R2
其中,W为节点的资源占用系数,C为节点正在执行的任务数量,R1为节点的CPU使用率,R2为节点的内存使用率。
获得多个节点中的每个节点的资源占用系数之后,作为一种可选的实施方式,可以从多个节点中选取出资源占用系数最小的节点,作为目标节点。这样,便能够确保目标节点在被选取出时,具有较强的处理能力,基于此,在目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务时,便能够确保延时任务具有较高的执行效率,以实现确保延时任务能够准时执行的技术效果。
获得多个节点中的每个节点的资源占用系数之后,作为另一种可选的实施方式,还可以获得多个节点中的每个节点的地址信息,该地址信息可以为IP信息,针对每个节点,以节点的资源占用系数为值(value),节点的地址信息为键(key),通过预设选举算法获得每个节点的选举参考数据,其中,该预设选举算法可以是PAXOS算法。然后,再根据多个节点中每个节点的选举参考数据,从多个节点中选取出目标节点,以使目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务。这样,目标节点在执行与目标信息对应的延时任务的过程中,便能够始终维持较强的处理能力,基于此,在目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务时,便能够确保延时任务具有较高的执行效率,以实现确保延时任务能够准时执行的技术效果。
此外,本申请实施例中,当目标信息中剩余轮询次数的值为约定数值,且从服务器集群包括的多个节点中选取出目标节点后,还可以使目标节点为与目标信息对应的延时任务添加任务锁,再根据目标信息中的任务处理信息执行与目标信息对应的延时任务,并在延时任务执行完成之后,使目标节点释放任务锁,并将延时任务的触发信息从槽位中删除。这样,在目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务时,便可以避免该延时任务被服务器集群中除目标节点以外的其他节点重复执行,也即,避免该延时任务占用服务器集群中除目标节点以外的其他节点的资源,服务器集群中除目标节点以外的其他节点便可以在目标节点执行该延时任务时,高效地执行其他延时任务,以实现确保延时任务能够准时执行的技术效果。
需要说明的是,本申请实施例中,当目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务失败时,可以为该延时任务设置二次延时时间,并根据二次延时时间获得将该延时任务在环形阵列中对应的槽位,将该延时任务的触发信息存储于环形阵列中对应的槽位。其中,二次延时时间可以是预设时间间隔的整数倍。
进一步地,请结合图3,本申请实施例中,延时任务执行方法还可以包括步骤S210、步骤S220和步骤S230,用于将生成的延时任务的触发信息存储于环形阵列中与该延时任务对应的槽位。
步骤S210,接收待执行任务之后,获得待执行任务的任务生成信息,任务生成信息包括待执行任务的延时时长和任务处理信息,待执行任务为生成的任一延时任务。
本申请实施例中,可以在接收待执行任务之后,获得待执行任务的指定执行时间,进一步获得该指定执行时间与当前时间的时间差值,将该时间差值作为待执行任务的延时时长。
此外,待执行任务的任务处理信息可以为待执行任务的执行逻辑,但为了降低循环队列的空间占用率,待执行任务的任务处理信息也可以为用于检索待执行任务的执行逻辑的检索标识。基于此,本申请实施例中,也可以在接收待执行任务之后,获得待执行任务的执行逻辑,将执行逻辑储存于预设分布式储存系统,并根据执行逻辑在预设分布式存储系统中的存储位置,创建执行逻辑的检索标识,将检索标识作为待执行任务的任务处理信息。
其中,预设分布式储存系统可以是Redis缓存系统、MongoDB数据库、Memcache缓存系统、MySQL关系型数据库中的任一种,具体可以根据实际需求选择,也即,根据待执行任务的特征选择。例如,当待执行任务为删除超过指定支付时间未成功支付的订单时,由于订单生成量较大,且订单的生成时间与指定支付时间之间的时间差值较小,通常为5min-15min,因此,可以采用Redis缓存系统对执行逻辑进行存储。再例如,当待执行任务为订单完成之后,将超过指定评价时间未及时评价的订单的评价设置为五星好评时,由于需要评价的订单量较大,且订单的完成时间与指定评价时间之间的时间差值较大,通常为45天以上,因此,可以采用MongoDB数据库对执行逻辑进行存储。
本申请实施例中,由于预设分布式储存系统提供的分布式数据存储方式具有高可靠性特点,并且能够提供高吞吐量的数据访问,因此,将执行逻辑储存于预设分布式储存系统中,便能够避免执行逻辑丢失,以确保执行逻辑的存储安全,同时,能够通过提供高吞吐量的数据确保待执行任务能够准时执行。
步骤S220,根据延时时长、循环队列中槽位的数量、预设时间间隔,以及正在被询问的槽位,获得与待执行任务对应的剩余轮询次数和槽位,并将与待执行任务对应的槽位作为目标槽位。
本申请实施例中,将根据延时时长、循环队列中槽位的数量,以及预设时间间隔,获得与待执行任务对应的剩余轮询次数。示例性的,与待执行任务对应的剩余轮询次数可以通过以下计算规则获得:
M=T div(L*S)
其中,M为与待执行任务对应的剩余轮询次数,T为延时时长,L为循环队列中槽位的数量,S为预设时间间隔。
本申请实施例中,将根据延时时长、循环队列中槽位的数量、预设时间间隔,以及正在被询问的槽位,获得与待执行任务对应的槽位。示例性的,与待执行任务对应的槽位可以通过以下计算规则获得:
N=[(T+n*S)mod(L*S)]/S
其中,N为与待执行任务对应的槽位的序号,T为延时时长,n为正在被询问的槽位的序号,S为预设时间间隔,L为循环队列中槽位的数量。
同样,与待执行任务对应的槽位也可以通过以下计算规则获得:
N={[T mod(L*S)]/S}+n
其中,N为与待执行任务对应的槽位的序号,T为延时时长,L为循环队列中槽位的数量,S为预设时间间隔,n为正在被询问的槽位的序号。
步骤S230,将剩余轮询次数和任务处理信息作为待执行任务的触发信息,并储存于目标槽位。本申请实施例中,一个或多个待执行任务的触发信息可以以任务链表的形式存储于目标槽位。
以下将举例对本申请实施例提供的关于延时任务执行方法的一种可能的实施方式进行实现过程介绍。
例如,正在被询问的槽位的序号为3(即图4中的指针指向序号为3的槽位)时,接收到的延时任务包括第一延时任务和第二延时任务,其中,第一延时任务的延时时长为8s,第二延时任务的延时时长为56s,而预设时间间隔为2s,那么,根据上述提供的相应计算规则,可以获得与第一延时任务对应的剩余轮询次数为0,槽位的序号为7,与第二延时任务对应的剩余轮询次数为3,槽位的序号为7。因此,可以将剩余轮询次数0,以及第一延时任务的任务处理信息,作为第一延时任务的触发信息,并储存于序号为7的槽位,将剩余轮询次数3,以及第二延时任务的任务处理信息,作为第二延时任务的触发信息,并储存于序号为7的槽位。
然后,继续按预设时间间隔依次轮询循环队列中包括的多个槽位,当轮询至序号为7的槽位时,将序号为7的槽位中第一延时任务的触发信息,以及第二延时任务的触发信息共同作为目标信息分别进行判断。
其中,第一延时任务的触发信息中剩余轮询次数为0,则从多个节点中选取出目标节点,以使目标节点为第一延时任务添加任务锁,再根据第一延时任务的触发信息中的任务处理信息执行第一延时任务,并在第一延时任务执行完成之后,使目标节点释放任务锁,并将第一延时任务的触发信息从槽位中删除。第二延时任务的触发信息中剩余轮询次数为3,则对该剩余轮询次数进行减1操作,获得第二延时任务的触发信息中新的剩余轮询次数为2,再继续按预设时间间隔依次轮询循环队列中包括的多个槽位,并重复以上步骤,直至第二延时任务的触发信息中剩余轮询次数为0时,从多个节点中选取出目标节点,以使目标节点为第二延时任务添加任务锁,再根据第二延时任务的触发信息中的任务处理信息执行第二延时任务,并在第二延时任务执行完成之后,使目标节点释放任务锁,并将第二延时任务的触发信息从槽位中删除。
基于与上述延时任务执行方法同样的发明构思,本申请实施例还提供了一种延时任务执行装置110。请参阅图5,延时任务执行装置110包括轮询模块111、判断模块112和执行模块113。
轮询模块111,用于按预设时间间隔依次轮询循环队列中包括的多个槽位,槽位用于储存延时任务的触发信息,触发信息包括剩余轮询次数和任务处理信息。
关于轮询模块111的描述具体可参考上述步骤S110的详细描述,也即,步骤S110可以由轮询模块111执行,此处不再赘述。
判断模块112,用于针对每个正在被询问的槽位,将槽位中储存的延时任务的触发信息作为目标信息,并判断目标信息中剩余轮询次数的值是否为约定数值。
关于判断模块112的描述具体可参考上述步骤S120的详细描述,也即,步骤S120可以由判断模块112执行,此处不再赘述。
执行模块113,用于在目标信息中剩余轮询次数的值为约定数值时,从多个节点中选取出目标节点,以使目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务。
关于执行模块113的描述具体可参考上述步骤S130的详细描述,也即,步骤S130可以由执行模块113执行,此处不再赘述。
作为一种可选的实施方式,执行模块113可以包括:
第一计算单元,用于在所述目标信息中剩余轮询次数的值为所述约定数值时,获得服务器集群包括的多个节点中的每个节点的资源占用系数。
第一执行单元,用于根据每个节点的资源占用系数,从所述多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
其中,第一执行单元可以包括:
查找子单元,用于获得所述多个节点中的每个节点的地址信息。
计算子单元,用于针对每个节点,以所述节点的资源占用系数为值,所述节点的地址信息为键,通过预设选举算法获得每个节点的选举参考数据。
执行子单元,用于根据所述多个节点中每个节点的选举参考数据,从所述多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
作为另一种可选的实施方式,执行模块113可以包括:
第二执行单元,用于在所述目标信息中剩余轮询次数的值为所述约定数值时,从服务器集群包括的多个节点中选取出目标节点,以使所述目标节点为与所述目标信息对应的延时任务添加任务锁,并根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
删除单元,用于在所述延时任务执行完成之后,使所述目标节点释放所述任务锁,并将所述延时任务的触发信息从所述槽位中删除。
本申请实施例中,延时任务执行装置110还可以包括:
更新模块,用于若所述目标信息中剩余轮询次数的值未达到所述约定数值,则对所述目标信息中的剩余轮询次数进行更新。
本申请实施例中,延时任务执行装置110还可以包括:
采集模块,用于在接收待执行任务之后,获得所述待执行任务的任务生成信息,所述任务生成信息包括待执行任务的延时时长和任务处理信息,所述待执行任务为生成的任一延时任务。
关于采集模块的描述具体可参考上述步骤S210的详细描述,也即,步骤S210可以由采集模块执行,此处不再赘述。
定位模块,用于根据所述延时时长、所述循环队列中槽位的数量、所述预设时间间隔,以及正在被询问的槽位,获得与所述待执行任务对应的剩余轮询次数和槽位,并将与所述待执行任务对应的槽位作为目标槽位。
关于定位模块的描述具体可参考上述步骤S220的详细描述,也即,步骤S220可以由定位模块执行,此处不再赘述。
存储模块,用于将所述剩余轮询次数和所述任务处理信息作为所述待执行任务的触发信息,并储存于所述目标槽位。
关于存储模块的描述具体可参考上述步骤S230的详细描述,也即,步骤S230可以由存储模块执行,此处不再赘述。
其中,采集模块可以包括:
获取单元,用于接收待执行任务之后,获得所述待执行任务的指定执行时间和执行逻辑;
第二计算单元,用于获得所述指定执行时间与当前时间的时间差值,作为所述待执行任务的延时时长;
创建单元,用于将所述执行逻辑储存于预设分布式储存系统后,创建所述执行逻辑的检索标识,以将所述检索标识作为所述任务处理信息;
整合单元,用于将所述延时时长和所述任务处理信息作为所述待执行任务的任务生成信息。此外,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时,可实现上述方法实施例中提供的延时任务执行方法,具体可参见上述方法实施例,此处不再赘述。
综上所述,本申请实施例提供的延时任务执行方法、装置及电子设备,通过按预设时间间隔依次轮询循环队列中包括的多个槽位,针对每个正在被询问的槽位,将该槽位中储存的延时任务的触发信息作为目标信息,并在判断出目标信息中剩余轮询次数的值为约定数值时,从多个节点中选取出目标节点,以使目标节点根据目标信息中的任务处理信息执行与目标信息对应的延时任务,这种延时任务执行方法采用了循环队列实现延时任务的触发控制,因此,延时任务的执行是主动触发的,相对于现有技术中,通过定时任务周期性的去扫描数据库,以检测是否存在需要执行的延时任务,若存在需要执行的延时任务,则一次性批量执行的实施方式而言,能够确保延时任务的准时执行。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种延时任务执行方法,其特征在于,包括:
按预设时间间隔依次轮询循环队列中包括的多个槽位,所述槽位用于储存延时任务的触发信息,所述触发信息包括剩余轮询次数和任务处理信息;
针对每个正在被询问的槽位,将所述槽位中储存的延时任务的触发信息作为目标信息,并判断所述目标信息中剩余轮询次数的值是否为约定数值;
若所述目标信息中剩余轮询次数的值为所述约定数值,则从多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
2.根据权利要求1所述的延时任务执行方法,其特征在于,所述若所述目标信息中剩余轮询次数的值为所述约定数值,则从多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务,包括:
若所述目标信息中剩余轮询次数的值为所述约定数值,则获得服务器集群包括的多个节点中的每个节点的资源占用系数;
根据每个节点的资源占用系数,从所述多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
3.根据权利要求2所述的延时任务执行方法,其特征在于,所述根据每个节点的资源占用系数,从所述多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务,包括:
获得所述多个节点中的每个节点的地址信息;
针对每个节点,以所述节点的资源占用系数为值,所述节点的地址信息为键,通过预设选举算法获得每个节点的选举参考数据;
根据所述多个节点中每个节点的选举参考数据,从所述多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
4.根据权利要求1所述的延时任务执行方法,其特征在于,所述若所述目标信息中剩余轮询次数的值为所述约定数值,则从多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务,包括:
若所述目标信息中剩余轮询次数的值为所述约定数值,则从服务器集群包括的多个节点中选取出目标节点,以使所述目标节点为与所述目标信息对应的延时任务添加任务锁,并根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务;
在所述延时任务执行完成之后,使所述目标节点释放所述任务锁,并将所述延时任务的触发信息从所述槽位中删除。
5.根据权利要求1所述的延时任务执行方法,其特征在于,所述针对每个正在被询问的槽位,将所述槽位中储存的触发信息作为目标信息,并判断所述目标信息中剩余轮询次数的值是否为约定数值之后,所述延时任务执行方法,还包括:
若所述目标信息中剩余轮询次数的值未达到所述约定数值,则对所述目标信息中的剩余轮询次数进行更新。
6.根据权利要求1所述的延时任务执行方法,其特征在于,所述延时任务执行方法,还包括:
接收待执行任务之后,获得所述待执行任务的任务生成信息,所述任务生成信息包括待执行任务的延时时长和任务处理信息,所述待执行任务为生成的任一延时任务;
根据所述延时时长、所述循环队列中槽位的数量、所述预设时间间隔,以及正在被询问的槽位,获得与所述待执行任务对应的剩余轮询次数和槽位,并将与所述待执行任务对应的槽位作为目标槽位;
将所述剩余轮询次数和所述任务处理信息作为所述待执行任务的触发信息,并储存于所述目标槽位。
7.根据权利要求6所述的延时任务执行方法,其特征在于,所述接收待执行任务之后,获得所述待执行任务的任务生成信息,包括:
接收待执行任务之后,获得所述待执行任务的指定执行时间和执行逻辑;
获得所述指定执行时间与当前时间的时间差值,作为所述待执行任务的延时时长;
将所述执行逻辑储存于预设分布式储存系统后,创建所述执行逻辑的检索标识,以将所述检索标识作为所述任务处理信息;
将所述延时时长和所述任务处理信息作为所述待执行任务的任务生成信息。
8.一种延时任务执行装置,其特征在于,包括:
轮询模块,用于按预设时间间隔依次轮询循环队列中包括的多个槽位,所述槽位用于储存延时任务的触发信息,所述触发信息包括剩余轮询次数和任务处理信息;
判断模块,用于针对每个正在被询问的槽位,将所述槽位中储存的延时任务的触发信息作为目标信息,并判断所述目标信息中剩余轮询次数的值是否为约定数值;
执行模块,用于在所述目标信息中剩余轮询次数的值为所述约定数值时,从多个节点中选取出目标节点,以使所述目标节点根据所述目标信息中的任务处理信息执行与所述目标信息对应的延时任务。
9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器上存储有计算机程序,所述处理器用于执行所述存储器中的所述计算机程序,以实现权利要求1-7中任一项所述的延时任务执行方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被执行时,可实现权利要求1-7中任一项所述的延时任务执行方法。
CN201910332861.2A 2019-04-24 2019-04-24 延时任务执行方法、装置及电子设备 Active CN110032438B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910332861.2A CN110032438B (zh) 2019-04-24 2019-04-24 延时任务执行方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910332861.2A CN110032438B (zh) 2019-04-24 2019-04-24 延时任务执行方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN110032438A true CN110032438A (zh) 2019-07-19
CN110032438B CN110032438B (zh) 2021-11-26

Family

ID=67239954

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910332861.2A Active CN110032438B (zh) 2019-04-24 2019-04-24 延时任务执行方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN110032438B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110532081A (zh) * 2019-09-02 2019-12-03 政采云有限公司 一种定时任务处理方法及装置
CN110856004A (zh) * 2019-11-05 2020-02-28 北京字节跳动网络技术有限公司 消息处理方法、装置、可读存储介质及电子设备
CN110990141A (zh) * 2019-12-12 2020-04-10 深圳前海环融联易信息科技服务有限公司 定时任务处理方法、装置、计算设备及存储介质
CN111026524A (zh) * 2019-10-25 2020-04-17 北京奇艺世纪科技有限公司 处理延时任务的方法、装置、计算机设备和存储介质
CN111026526A (zh) * 2019-11-12 2020-04-17 珠海格力电器股份有限公司 程序的定时器配置方法、装置、存储介质及终端设备
CN111309496A (zh) * 2020-02-10 2020-06-19 北京无限光场科技有限公司 延时任务实现方法、系统、装置、设备、存储介质
CN111367629A (zh) * 2020-03-30 2020-07-03 绿盟科技集团股份有限公司 一种延时任务处理方法及装置
CN112817666A (zh) * 2021-01-27 2021-05-18 北京字跳网络技术有限公司 定时方法、装置、电子设备和存储介质
CN112882812A (zh) * 2021-03-16 2021-06-01 北京字节跳动网络技术有限公司 延时任务调度与存储方法、装置、设备、介质及系统
CN113672358A (zh) * 2020-05-15 2021-11-19 北京沃东天骏信息技术有限公司 定时任务处理方法及装置、系统、电子设备和存储介质
CN113986097A (zh) * 2021-10-20 2022-01-28 上海淇玥信息技术有限公司 一种任务调度的方法、装置及电子设备
WO2022135160A1 (zh) * 2020-12-23 2022-06-30 展讯半导体(南京)有限公司 缓存空间的释放方法、释放系统、电子设备及存储介质
CN114844844A (zh) * 2022-04-25 2022-08-02 平安普惠企业管理有限公司 延时消息处理方法、装置、设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1530834A (zh) * 2003-03-13 2004-09-22 ���µ�����ҵ��ʽ���� 任务切换装置、方法和程序
CN103428008A (zh) * 2013-08-28 2013-12-04 浙江大学 面向多用户群的大数据分发策略
US20140019986A1 (en) * 2012-07-16 2014-01-16 Sony Pictures Technologies Inc. Managing multi-threaded operations in a multimedia authoring environment
CN105760378A (zh) * 2014-12-15 2016-07-13 阿里巴巴集团控股有限公司 一种事务状态监控方法与设备
CN107220030A (zh) * 2017-05-31 2017-09-29 北京北信源软件股份有限公司 延时任务执行方法及装置
CN108874535A (zh) * 2018-05-14 2018-11-23 中国平安人寿保险股份有限公司 一种任务调节方法、计算机可读存储介质及终端设备
CN109284189A (zh) * 2018-09-06 2019-01-29 福建星瑞格软件有限公司 一种批量任务超时高效触发方法及系统

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1530834A (zh) * 2003-03-13 2004-09-22 ���µ�����ҵ��ʽ���� 任务切换装置、方法和程序
US20140019986A1 (en) * 2012-07-16 2014-01-16 Sony Pictures Technologies Inc. Managing multi-threaded operations in a multimedia authoring environment
CN103428008A (zh) * 2013-08-28 2013-12-04 浙江大学 面向多用户群的大数据分发策略
CN105760378A (zh) * 2014-12-15 2016-07-13 阿里巴巴集团控股有限公司 一种事务状态监控方法与设备
CN107220030A (zh) * 2017-05-31 2017-09-29 北京北信源软件股份有限公司 延时任务执行方法及装置
CN108874535A (zh) * 2018-05-14 2018-11-23 中国平安人寿保险股份有限公司 一种任务调节方法、计算机可读存储介质及终端设备
CN109284189A (zh) * 2018-09-06 2019-01-29 福建星瑞格软件有限公司 一种批量任务超时高效触发方法及系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
丛佩丽: "《网络操作系统管理与应用》", 31 May 2016, 中国铁道出版社 *
李强: "《云计算及其应用》", 30 April 2018, 武汉大学出版社 *
陈林,廖恩红,曹杰: "《"互联网+"智慧校园技术与工程实施》", 30 September 2017 *

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110532081A (zh) * 2019-09-02 2019-12-03 政采云有限公司 一种定时任务处理方法及装置
CN110532081B (zh) * 2019-09-02 2022-03-22 政采云有限公司 一种定时任务处理方法及装置
CN111026524A (zh) * 2019-10-25 2020-04-17 北京奇艺世纪科技有限公司 处理延时任务的方法、装置、计算机设备和存储介质
CN111026524B (zh) * 2019-10-25 2024-07-05 北京奇艺世纪科技有限公司 处理延时任务的方法、装置、计算机设备和存储介质
CN110856004B (zh) * 2019-11-05 2022-02-01 北京字节跳动网络技术有限公司 消息处理方法、装置、可读存储介质及电子设备
CN110856004A (zh) * 2019-11-05 2020-02-28 北京字节跳动网络技术有限公司 消息处理方法、装置、可读存储介质及电子设备
CN111026526A (zh) * 2019-11-12 2020-04-17 珠海格力电器股份有限公司 程序的定时器配置方法、装置、存储介质及终端设备
CN111026526B (zh) * 2019-11-12 2024-01-30 珠海格力电器股份有限公司 程序的定时器配置方法、装置、存储介质及终端设备
CN110990141A (zh) * 2019-12-12 2020-04-10 深圳前海环融联易信息科技服务有限公司 定时任务处理方法、装置、计算设备及存储介质
CN110990141B (zh) * 2019-12-12 2024-04-26 深圳前海环融联易信息科技服务有限公司 定时任务处理方法、装置、计算设备及存储介质
CN111309496A (zh) * 2020-02-10 2020-06-19 北京无限光场科技有限公司 延时任务实现方法、系统、装置、设备、存储介质
CN111367629A (zh) * 2020-03-30 2020-07-03 绿盟科技集团股份有限公司 一种延时任务处理方法及装置
CN113672358A (zh) * 2020-05-15 2021-11-19 北京沃东天骏信息技术有限公司 定时任务处理方法及装置、系统、电子设备和存储介质
WO2022135160A1 (zh) * 2020-12-23 2022-06-30 展讯半导体(南京)有限公司 缓存空间的释放方法、释放系统、电子设备及存储介质
CN112817666B (zh) * 2021-01-27 2023-07-21 北京字跳网络技术有限公司 定时方法、装置、电子设备和存储介质
CN112817666A (zh) * 2021-01-27 2021-05-18 北京字跳网络技术有限公司 定时方法、装置、电子设备和存储介质
CN112882812A (zh) * 2021-03-16 2021-06-01 北京字节跳动网络技术有限公司 延时任务调度与存储方法、装置、设备、介质及系统
CN113986097A (zh) * 2021-10-20 2022-01-28 上海淇玥信息技术有限公司 一种任务调度的方法、装置及电子设备
CN113986097B (zh) * 2021-10-20 2024-02-27 上海淇玥信息技术有限公司 一种任务调度的方法、装置及电子设备
CN114844844A (zh) * 2022-04-25 2022-08-02 平安普惠企业管理有限公司 延时消息处理方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN110032438B (zh) 2021-11-26

Similar Documents

Publication Publication Date Title
CN110032438A (zh) 延时任务执行方法、装置及电子设备
CN105635331B (zh) 一种分布式环境下的服务寻址方法及装置
CN107302488B (zh) 虚拟物品的分配方法、系统及服务器
CN109657888A (zh) 一种agv任务生成方法、装置、电子设备及存储介质
CN108074164B (zh) 订单处理方法和装置
CN110782057A (zh) 快递派送方法、装置、电子设备及可读取存储介质
CN108717379A (zh) 电子装置、分布式任务调度方法及存储介质
CN110231995A (zh) 一种基于Actor模型的任务调度方法、装置及存储介质
CN110390584A (zh) 一种异常用户的识别方法、识别装置及可读存储介质
CN106372822B (zh) 业务对象预约时段处理方法及装置
CN108733459A (zh) 一种分布式定时的方法、服务器以及系统
CN110826945A (zh) 一种自动化仓库的组单方法和装置
CN113205299B (zh) 一种生成拣货任务单的方法、装置和存储介质
CN109840815B (zh) 用于订单处理的系统及方法
CN115756780A (zh) 量子计算任务调度方法、装置、计算机设备及存储介质
CN114462952A (zh) 智能仓储管理方法、装置、设备及介质
CN110376985B (zh) 一种原料场物流仿真系统胶带机流程选择方法及系统
CN111123870B (zh) 系统控制方法、装置及电子设备
CN115907413A (zh) 保洁任务处理方法及装置
US20200394583A1 (en) Summary path in an interactive graphical interface
CN110400043A (zh) 订单分配方法、装置、设备和存储介质
CN117614797A (zh) 数据采集系统和方法
CN111222810A (zh) 一种实时分配格口的方法和装置
CN107533688A (zh) 一种业务处理方法及设备
CN109241042A (zh) 数据处理方法、装置以及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant