CN110515718B - 批量任务断点续作方法、装置、设备及介质 - Google Patents

批量任务断点续作方法、装置、设备及介质 Download PDF

Info

Publication number
CN110515718B
CN110515718B CN201910815378.XA CN201910815378A CN110515718B CN 110515718 B CN110515718 B CN 110515718B CN 201910815378 A CN201910815378 A CN 201910815378A CN 110515718 B CN110515718 B CN 110515718B
Authority
CN
China
Prior art keywords
batch
unit
task
execution
batch unit
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.)
Active
Application number
CN201910815378.XA
Other languages
English (en)
Other versions
CN110515718A (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.)
WeBank Co Ltd
Original Assignee
WeBank 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 WeBank Co Ltd filed Critical WeBank Co Ltd
Priority to CN201910815378.XA priority Critical patent/CN110515718B/zh
Publication of CN110515718A publication Critical patent/CN110515718A/zh
Application granted granted Critical
Publication of CN110515718B publication Critical patent/CN110515718B/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种批量任务断点续作方法、装置、设备及介质,涉及金融科技技术领域,该方法包括:在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令。本发明旨在解决现有批量任务断点续作过程中,人力物力资源浪费多的技术问题。

Description

批量任务断点续作方法、装置、设备及介质
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及一种批量任务断点续作方法、装置、设备及介质。
背景技术
随着金融科技(Fintech),尤其是互联网科技金融的不断发展,越来越多的技术应用在金融领域。其中,金融领域中的批量任务断点续作涉及到众多技术应用,由于银行的批量任务内部逻辑非常复杂,依赖的服务也非常多,不可避免的出现一些意外场景,为了保证批量任务的高可用性,需要为批量任务增加断点续作的功能,现有技术中,是通过将内部复杂的代码,从逻辑上切割成不同的代码段,比如代码段1、代码段2,一直到代码段N,并为每个代码段增加一个代码段执行结果逻辑,且考虑到每个代码段是否能支持重跑的方式,为每个批量增加续作功能,由于这样的方式需要每个批量任务内部开发人员额外考虑增加记录逻辑,记录代码段的执行记录和结果等内容,浪费了大量的人力物力资源。
发明内容
本发明的主要目的在于提供一种批量任务断点续作方法、装置、设备及介质,旨在解决现有批量任务断点续作过程中,人力物力资源浪费多的技术问题。
为实现上述目的,本发明实施例提供一种批量任务断点续作方法,所述批量任务断点续作方法包括:
在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;
若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;
其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令。
可选地,所述在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中步骤包括:
在检测到批量任务的接入指令时,获取所述批量任务的执行逻辑步骤;
根据所述执行逻辑步骤获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中。
可选地,所述若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理步骤包括:
若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,判断所述执行指令是否针对多个待处理任务;
若所述执行指令针对多个待处理任务,获取所述批量单元池中处理所述批量单元的各个执行处理器;
根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
可选地,所述根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理步骤包括:
获取所述每个待处理任务对应批量单元的个数;
根据所述各个执行处理器的当前负载指数以及所述每个待处理任务对应批量单元的个数,触发所述各个执行处理器对所述批量单元进行竞争处理。
可选地,所述根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理步骤包括:
获取所述待处理任务的个数,并判断所述待处理任务的个数是否大于所述各个执行处理器的个数;
当所述待处理任务的个数大于所述各个执行处理器的个数时,根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
可选地,所述若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理步骤之后包括:
在检测到每个批量单元执行完成时,记录每个批量单元的执行结果。
可选地,所述批量单元触发器确定每个批量任务的执行时间,以及所述每个批量任务包含的批量单元以及所述各个批量单元的执行顺序,以有序处理所述各个批量单元。
本发明还提供一种批量任务断点续作装置,所述批量任务断点续作装置包括:
抽象获取模块,用于在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;
检测模块,用于若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;
其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令。
可选地,所述抽象获取模块包括:
第一检测单元,用于在检测到批量任务的接入指令时,获取所述批量任务的执行逻辑步骤;
抽象获取单元,用于根据所述执行逻辑步骤获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中。
可选地,所述检测模块包括:
第二检测单元,用于若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,判断所述执行指令是否针对多个待处理任务;
获取单元,用于若所述执行指令针对多个待处理任务,获取所述批量单元池中处理所述批量单元的各个执行处理器;
竞争处理单元,用于根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
可选地,所述竞争处理单元包括:
获取子单元,用于获取所述每个待处理任务对应批量单元的个数;
竞争处理子单元,用于根据所述各个执行处理器的当前负载指数以及所述每个待处理任务对应批量单元的个数,触发所述各个执行处理器对所述批量单元进行竞争处理。
可选地,所述竞争处理子单元用于实现:
获取所述待处理任务的个数,并判断所述待处理任务的个数是否大于所述各个执行处理器的个数;
当所述待处理任务的个数大于所述各个执行处理器的个数时,根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
可选地,所述竞争处理子单元还用于实现:
在检测到每个批量单元执行完成时,记录每个批量单元的执行结果。
可选地,所述检测模块包括:
第三检测单元,用于若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;
确定单元,用于所述批量单元触发器确定每个批量任务的执行时间,以及所述每个批量任务包含的批量单元以及所述各个批量单元的执行顺序,以有序处理所述各个批量单元。
本发明还提供一种介质,所述介质上存储有批量任务断点续作程序,所述批量任务断点续作程序被处理器执行时实现如上述的批量任务断点续作方法的步骤。
本发明在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令。在本申请中,不再是通过为每个代码段增加一个代码段执行结果逻辑,并为每个代码段考虑是否能支持重跑的方式,实现为批量任务增加续作功能,而是预先设置有批量单元触发器,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令,因而,若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令,并在所述批量单元池对所述批量单元进行处理后,若检测到意外断点时,由于所述预设的批量单元触发器时触发各个批量单元的执行指令,所以,能够及时进行批量任务的继续处理,且由于通过预设的批量单元触发器时触发各个批量单元的执行指令,而不是通过为每个代码段增加一个代码段执行结果逻辑等,因而,节约了人力物力资源。
附图说明
图1为本发明批量任务断点续作方法第一实施例的流程示意图;
图2为本发明批量任务断点续作方法第二实施例中在在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中步骤的细化流程示意图;
图3是本发明实施例方法涉及的硬件运行环境的设备结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种批量任务断点续作方法,在批量任务断点续作方法一实施例中,参照图1,所述批量任务断点续作方法包括:
步骤S10,在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;
步骤S20,若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;
其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令。
具体步骤如下:
步骤S10,在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;
在本实施例中,批量任务断点续作方法应用于批量任务断点续作设备,在该批量任务断点续作设备中,包括批量任务断点续作系统,批量任务断点续作系统在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中,需要说明的是,批量任务断点续作系统在检测到批量任务的接入指令过程中,可以是同时接收多个批量任务的接入指令,或者先后接收多个批量任务的接入指令等,批量任务断点续作系统在检测到批量任务的接入指令后,批量任务断点续作系统获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中,具体地:获取批量任务中的任务处理或者任务逻辑构成,以将批量任务抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中。例如,若批量任务为定时转账批量任务,则各个批量单元可以抽象为下述三种单元:第一步:预处理单元、第二步:转账单元、第三步:状态更新单元,也即,将定时转账批量任务切割为3个单元。其中,每个批量单元具有如下基本特征:可重跑(多次处理),也即批量单元支持不限次数重跑,批量单元无状态,批量单元相互对等,也即批量单元相互独立,批量单元之间无依赖、无关联。
具体地,参照图2,所述在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中步骤包括:
步骤S11,在检测到批量任务的接入指令时,获取所述批量任务的执行逻辑步骤;
在检测到批量任务的接入指令时,获取所述批量任务的执行逻辑步骤,也即,在检测到批量任务的接入指令时,获取预先设置的批量任务的执行逻辑步骤,或者在检测到批量任务的接入指令时,获取配置的粒度切割规则,该粒度切割规则可以是根据任务构成或者处理顺序切割,以根据粒度切割规则获取所述批量任务的执行逻辑步骤。例如,若批量任务为定时催收批量任务,获取配置的粒度切割规则,则各个批量单元可以为第一步:预处理单元、第二步:案件生成单元,第三步:下发单元、第四步:语音催收单元,第五步:状态更新单元等。
在接收到多个批量任务的接入指令,对该多个批量任务分别进行执行逻辑步骤的确定。
步骤S12,根据所述执行逻辑步骤获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中。
根据所述执行逻辑步骤获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中,在接收到多个批量任务的接入指令,对该多个批量任务的各个批量单元分别抽象获取至预设批量单元池中,也即,在本申请中,设置有预设批量单元池,该预设批量单元池是接收各个批量单元的,且在该预设批量单元池中,是对各个批量单元对应批量任务进行分类保存的,例如,A批量任务对应的多个批量单元保存在一处。
需要说明的是,在批量单元池中还存在执行处理器,该执行处理器对批量单元进行执行处理。
步骤S20,若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;
其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令。
在检测到每个批量单元执行完成时,记录每个批量单元的执行结果如执行成功还是不成功,并记录当前执行的其他批量单元的处理状态,在记录当前执行的其他批量单元可以在原有数字记录基础上加一即可。
所述批量单元触发器确定每个批量任务的执行时间,以及所述每个批量任务包含的批量单元以及所述各个批量单元的执行顺序,以有序处理所述各个批量单元。
在本实施例中,是设置有批量单元触发器的,也即由于批量单元是批量单元池的基本组成单位,是触发器调度批量单元池的最小粒度,因而,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令,例如,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系为在凌晨0点开始处理第一个A1批量单元,且每隔1秒进行其他A1批量单元的处理,也即批量单元触发器在0点定时触发各个批量单元的执行指令,即使A1批量单元对应前一个逻辑的批量单元出现断点时,当前的A1批量单元也能及时被处理,具体地,批量单元触发器设置有核心功能,该核心功能首先管理负责每个批量任务的执行时间,具体通过支持cron表达式(指的是Linux下的定时时间的表现形式)管理负责每个批量任务的执行时间。批量单元触发器的核心功能还包括为每个批量任务的批量单元设置执行顺序等功能。批量单元触发器为每个批量任务的批量单元设置执行顺序,并定时触发各个批量单元的执行指令,在所述批量单元池对所述批量单元进行处理;也即,检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令,并在所述批量单元池对所述批量单元进行处理后,若检测到意外断点时,由于所述预设的批量单元触发器时触发各个批量单元的执行指令,所以,能够及时进行批量任务的继续处理,且由于所述预设的批量单元触发器时触发各个批量单元的执行指令,而不是通过为每个代码段增加一个代码段执行结果逻辑等,因而,节约了人力物力资源。
所述若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理步骤之后包括:
步骤S30,在检测到每个批量单元执行完成时,记录每个批量单元的执行结果。
本发明在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令。在本申请中,不再是通过为每个代码段增加一个代码段执行结果逻辑,并为每个代码段考虑是否能支持重跑的方式,实现为批量任务增加续作功能,而是预先设置有批量单元触发器,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令,因而,若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令,并在所述批量单元池对所述批量单元进行处理后,若检测到意外断点时,由于所述预设的批量单元触发器时触发各个批量单元的执行指令,所以,能够及时进行批量任务的继续处理,且由于通过预设的批量单元触发器时触发各个批量单元的执行指令,而不是通过为每个代码段增加一个代码段执行结果逻辑等,因而,节约了人力物力资源。
进一步地,在第一实施例的基础上,本发明提供批量任务断点续作方法另一实施例,在该实施例中,所述若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理步骤包括:
步骤S21,若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,判断所述执行指令是否针对多个待处理任务;
在本实施例中,若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,判断所述执行指令是否针对多个待处理任务,或者若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,判断是否同时存在多个执行指令,也即,判断是否同时存在多个待处理任务。
步骤S22,若所述执行指令针对多个待处理任务,获取所述批量单元池中处理所述批量单元的各个执行处理器;
若所述执行指令针对多个待处理任务,获取所述批量单元池中处理所述批量单元的各个执行处理器,也即,在本实施例中,批量单元池中是存在多个执行处理器的,例如,执行处理器1、执行处理器2、执行处理器3等。
其中,执行处理器的个数可以大于等于或者小于待处理任务的个数。
步骤S23,根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
需要说明的是,可以随机将批量单元发送给对应的执行处理器,或者根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理,当根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理时,若当前负载指数高,则确定最末竞争得到对应的批量单元,若当前负载指数低,则确定最先竞争得到对应的批量单元。
所述根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理步骤包括:
步骤S24,获取所述每个待处理任务对应批量单元的个数;
在本实施例中,还获取所述每个待处理任务对应批量单元的个数,获取每个待处理任务对应批量单元的个数,从而确定各个执行处理器待处理的单元的数量。
步骤S25,根据所述各个执行处理器的当前负载指数以及所述每个待处理任务对应批量单元的个数,触发所述各个执行处理器对所述批量单元进行竞争处理。
根据所述各个执行处理器的当前负载指数以及所述每个待处理任务对应批量单元的个数,触发所述各个执行处理器对所述批量单元进行竞争处理,具体地,若所述各个执行处理器的当前负载指数高,每个待处理任务对应批量单元的个数大时,则确定当前负载指数高的执行处理器不对应处理批量单元的个数大的待处理任务,若所述各个执行处理器的当前负载指数低,每个待处理任务对应批量单元的个数大时,则确定当前负载指数高的执行处理器可对应处理批量单元的个数大的待处理任务。进一步的,为了提高批量任务处理的效率,将各个执行处理器的当前负载指数以及每个待处理任务对应批量单元的个数进行标准化处理,以便于标准化地为每个执行处理器分配批量任务,以根据所述各个执行处理器的当前负载指数以及所述每个待处理任务对应批量单元的个数,触发所述各个执行处理器对所述批量单元进行竞争处理。
在本实施例中,通过若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,判断所述执行指令是否针对多个待处理任务;若所述执行指令针对多个待处理任务,获取所述批量单元池中处理所述批量单元的各个执行处理器;根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。以实现快速处理批量单元。
进一步地,在第一实施例的基础上,本发明提供批量任务断点续作方法另一实施例,在该实施例中,所述根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理步骤包括:
步骤B1,获取所述待处理任务的个数,并判断所述待处理任务的个数是否大于所述各个执行处理器的个数;
在本实施例中,获取所述待处理任务的个数,并判断所述待处理任务的个数是否大于所述各个执行处理器的个数,判断的目的在于确定如何进行多个待处理任务的先后处理。
步骤B2,当所述待处理任务的个数大于所述各个执行处理器的个数时,根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
在本实施例中,当所述待处理任务的个数大于所述各个执行处理器的个数时,才根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理,当所述待处理任务的个数小于等于所述各个执行处理器的个数时,触发所述各个执行处理器随机选取所述批量单元,以避免竞争过程中资源的浪费。
在本实施例中,批量任务断点续作方法可选应用于金融领域场景,具体地,例如,银行在批量处理借款任务时,获取所述借款任务,以获取所述借款任务的执行逻辑步骤,以将所述借款任务抽象成各个借款批量单元,并将各个借款批量任务存储至预设批量单元池中,若检测到预设的批量单元触发器触发的对所述批量单元池中各个借款批量单元的执行指令时,在所述批量单元池对所述借款批量单元进行处理,其中,所述预设的批量单元触发器中配置有所述各个借款批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令。
参照图3,图3是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明实施例批量任务断点续作设备可以是PC,也可以是智能手机、平板电脑、便携计算机等终端设备。
如图3所示,该批量任务断点续作设备可以包括:处理器1001,例如CPU,存储器1005,通信总线1002。其中,通信总线1002用于实现处理器1001和存储器1005之间的连接通信。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储设备。
可选地,该批量任务断点续作设备还可以包括目标用户接口、网络接口、摄像头、RF(Radio Frequency,射频)电路,传感器、音频电路、WiFi模块等等。目标用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选目标用户接口还可以包括标准的有线接口、无线接口。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
本领域技术人员可以理解,图3中示出的批量任务断点续作设备结构并不构成对批量任务断点续作设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图3所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块以及批量任务断点续作程序。操作系统是管理和控制批量任务断点续作设备硬件和软件资源的程序,支持批量任务断点续作程序以及其它软件和/或程序的运行。网络通信模块用于实现存储器1005内部各组件之间的通信,以及与批量任务断点续作设备中其它硬件和软件之间通信。
在图3所示的批量任务断点续作设备中,处理器1001用于执行存储器1005中存储的批量任务断点续作程序,实现上述任一项所述的批量任务断点续作方法的步骤。
本发明批量任务断点续作设备具体实施方式与上述批量任务断点续作方法各实施例基本相同,在此不再赘述。
此外,本发明实施例还提出一种批量任务断点续作装置,所述批量任务断点续作装置包括:
所述批量任务断点续作装置包括:
抽象获取模块,用于在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;
检测模块,用于若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;
其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令。
可选地,所述抽象获取模块包括:
第一检测单元,用于在检测到批量任务的接入指令时,获取所述批量任务的执行逻辑步骤;
抽象获取单元,用于根据所述执行逻辑步骤获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中。
可选地,所述检测模块包括:
第二检测单元,用于若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,判断所述执行指令是否针对多个待处理任务;
获取单元,用于若所述执行指令针对多个待处理任务,获取所述批量单元池中处理所述批量单元的各个执行处理器;
竞争处理单元,用于根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
可选地,所述竞争处理单元包括:
获取子单元,用于获取所述每个待处理任务对应批量单元的个数;
竞争处理子单元,用于根据所述各个执行处理器的当前负载指数以及所述每个待处理任务对应批量单元的个数,触发所述各个执行处理器对所述批量单元进行竞争处理。
可选地,所述竞争处理子单元用于实现:
获取所述待处理任务的个数,并判断所述待处理任务的个数是否大于所述各个执行处理器的个数;
当所述待处理任务的个数大于所述各个执行处理器的个数时,根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
可选地,所述竞争处理子单元还用于实现:
在检测到每个批量单元执行完成时,记录每个批量单元的执行结果。
可选地,所述检测模块包括:
第三检测单元,用于若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;
确定单元,用于所述批量单元触发器确定每个批量任务的执行时间,以及所述每个批量任务包含的批量单元以及所述各个批量单元的执行顺序,以有序处理所述各个批量单元。
所述批量任务断点续作装置具体实施方式与上述批量任务断点续作方法各实施例基本相同,在此不再赘述。
此外,本发明还提供了一种计算机介质,所述计算机介质存储有一个或者一个以上程序,所述一个或者一个以上程序还可被一个或者一个以上的处理器执行以用于实现上述批量任务断点续作方法各实施例的步骤。
本发明设备及介质(即计算机介质)的具体实施方式的拓展内容与上述批量任务断点续作方法各实施例基本相同,在此不做赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。

Claims (9)

1.一种批量任务断点续作方法,其特征在于,所述批量任务断点续作方法包括:
在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;
若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;
其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令;
所述批量单元触发器确定每个批量任务的执行时间,以及所述每个批量任务包含的批量单元以及所述各个批量单元的执行顺序,以有序处理所述各个批量单元。
2.如权利要求1所述的批量任务断点续作方法,其特征在于,所述在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中步骤包括:
在检测到批量任务的接入指令时,获取所述批量任务的执行逻辑步骤;
根据所述执行逻辑步骤获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中。
3.如权利要求1所述的批量任务断点续作方法,其特征在于,所述若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理步骤包括:
若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,判断所述执行指令是否针对多个待处理任务;
若所述执行指令针对多个待处理任务,获取所述批量单元池中处理所述批量单元的各个执行处理器;
根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
4.如权利要求3所述的批量任务断点续作方法,其特征在于,所述根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理步骤包括:
获取所述每个待处理任务对应批量单元的个数;
根据所述各个执行处理器的当前负载指数以及所述每个待处理任务对应批量单元的个数,触发所述各个执行处理器对所述批量单元进行竞争处理。
5.如权利要求3所述的批量任务断点续作方法,其特征在于,所述根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理步骤包括:
获取所述待处理任务的个数,并判断所述待处理任务的个数是否大于所述各个执行处理器的个数;
当所述待处理任务的个数大于所述各个执行处理器的个数时,根据所述各个执行处理器的当前负载指数,触发所述各个执行处理器对所述批量单元进行竞争处理。
6.如权利要求1所述的批量任务断点续作方法,其特征在于,所述若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理步骤之后包括:
在检测到每个批量单元执行完成时,记录每个批量单元的执行结果。
7.一种批量任务断点续作装置,其特征在于,所述批量任务断点续作装置包括:
抽象获取模块,用于在检测到批量任务的接入指令时,获取所述批量任务以抽象成各个批量单元,并将各个批量任务存储至预设批量单元池中;
检测模块,用于若检测到预设的批量单元触发器触发的对所述批量单元池中各个批量单元的执行指令时,在所述批量单元池对所述批量单元进行处理;
其中,所述预设的批量单元触发器中配置有所述各个批量单元与确定的处理时间的依赖关系,以定时触发各个批量单元的执行指令;
所述检测模块包括:
确定单元,用于所述批量单元触发器确定每个批量任务的执行时间,以及所述每个批量任务包含的批量单元以及所述各个批量单元的执行顺序,以有序处理所述各个批量单元。
8.一种批量任务断点续作设备,其特征在于,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的批量任务断点续作程序,所述批量任务断点续作程序被所述处理器执行时实现如权利要求1至6中任一项所述的批量任务断点续作方法的步骤。
9.一种介质,其特征在于,所述介质上存储有批量任务断点续作程序,所述批量任务断点续作程序被处理器执行时实现如权利要求1至6中任一项所述的批量任务断点续作方法的步骤。
CN201910815378.XA 2019-08-30 2019-08-30 批量任务断点续作方法、装置、设备及介质 Active CN110515718B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910815378.XA CN110515718B (zh) 2019-08-30 2019-08-30 批量任务断点续作方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910815378.XA CN110515718B (zh) 2019-08-30 2019-08-30 批量任务断点续作方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN110515718A CN110515718A (zh) 2019-11-29
CN110515718B true CN110515718B (zh) 2023-07-18

Family

ID=68628567

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910815378.XA Active CN110515718B (zh) 2019-08-30 2019-08-30 批量任务断点续作方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN110515718B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111752842B (zh) * 2020-06-28 2024-02-27 中国银行股份有限公司 银行批量程序故障处理方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5408644A (en) * 1992-06-05 1995-04-18 Compaq Computer Corporation Method and apparatus for improving the performance of partial stripe operations in a disk array subsystem
CN106844018A (zh) * 2015-12-07 2017-06-13 阿里巴巴集团控股有限公司 一种任务处理方法、装置及系统
CN109254835A (zh) * 2018-06-27 2019-01-22 阿里巴巴集团控股有限公司 批处理任务的处理方法、装置、服务器及可读存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105892996A (zh) * 2015-12-14 2016-08-24 乐视网信息技术(北京)股份有限公司 一种批量数据处理的流水线作业方法及装置
CN109933415B (zh) * 2017-12-19 2021-05-04 中国移动通信集团河北有限公司 数据的处理方法、装置、设备及介质
CN108228326A (zh) * 2017-12-29 2018-06-29 深圳乐信软件技术有限公司 批量任务处理方法和分布式系统
CN108647093A (zh) * 2018-05-09 2018-10-12 厦门南讯软件科技有限公司 一种分布式任务处理系统及其使用方法
CN108762931A (zh) * 2018-05-31 2018-11-06 康键信息技术(深圳)有限公司 基于分布式调度系统的任务调度方法、服务器及存储介质
CN108829506A (zh) * 2018-07-04 2018-11-16 中国建设银行股份有限公司 批量任务处理方法、装置及服务系统
CN110113387A (zh) * 2019-04-17 2019-08-09 深圳前海微众银行股份有限公司 一种基于分布式批量处理系统的处理方法、装置及系统
CN110673936B (zh) * 2019-09-18 2022-05-17 平安科技(深圳)有限公司 编排业务的断点续作方法、装置、存储介质及电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5408644A (en) * 1992-06-05 1995-04-18 Compaq Computer Corporation Method and apparatus for improving the performance of partial stripe operations in a disk array subsystem
CN106844018A (zh) * 2015-12-07 2017-06-13 阿里巴巴集团控股有限公司 一种任务处理方法、装置及系统
CN109254835A (zh) * 2018-06-27 2019-01-22 阿里巴巴集团控股有限公司 批处理任务的处理方法、装置、服务器及可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Using Simulation for Scheduling and Rescheduling of Batch Processes;Girish Joglekar;https://www.mdpi.com/2227-9717/5/4/66;全文 *
分布式任务调度(TBSchedule分析);点融黑帮;https://www.jianshu.com/p/1b0313eb9c7f;全文 *

Also Published As

Publication number Publication date
CN110515718A (zh) 2019-11-29

Similar Documents

Publication Publication Date Title
JP6571277B2 (ja) 端末アプリケーションをロードする方法及び装置
CN108388988B (zh) 基于区块链的协同办公方法、系统及计算机可读存储介质
CN110119307B (zh) 数据处理请求的处理方法、装置、存储介质及电子装置
CN106790525A (zh) 一种文件下载方法及装置
CN114510339B (zh) 一种计算任务调度方法、装置、电子设备及可读存储介质
CN107786463B (zh) 一种网络数据的下载方法及装置和介质产品
CN108829519A (zh) 基于云平台的任务调度方法、云平台及计算机可读存储介质
CN107908679B (zh) 脚本语句转换方法、装置及计算机可读存储介质
CN110515718B (zh) 批量任务断点续作方法、装置、设备及介质
CN110046100B (zh) 一种分组测试的方法、电子设备及介质
CN110457312B (zh) 多类型数据的采集方法、装置、设备及可读存储介质
CN112199180A (zh) 多任务调度的方法及装置、电子设备及可读存储介质
CN109358927B (zh) 应用程序显示的方法、装置及终端设备
CN110852603B (zh) 高吞吐量的风控数据处理方法、装置、设备及存储介质
CN106550021B (zh) 推送消息的推送方法及装置
CN112286878A (zh) 文件扫描方法、装置、终端及存储介质
CN113849285A (zh) 延时任务处理方法、装置、电子设备及存储介质
CN111221651B (zh) 负载均衡配置方法、装置、服务器及可读存储介质
CN112184027A (zh) 任务进度更新方法、装置及存储介质
CN105511932A (zh) 一种应用的卸载方法和装置
CN111611077A (zh) 任务参数处理方法、终端和存储介质
CN112988160B (zh) 服务器编译方法、装置、设备及计算机可读存储介质
CN113742096B (zh) 一种事件队列的实现方法及系统
CN111274093B (zh) 一种应用程序的排序方法及装置
CN114827105B (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