CN115344362A - 动态任务负载调度方法及装置 - Google Patents

动态任务负载调度方法及装置 Download PDF

Info

Publication number
CN115344362A
CN115344362A CN202210787472.0A CN202210787472A CN115344362A CN 115344362 A CN115344362 A CN 115344362A CN 202210787472 A CN202210787472 A CN 202210787472A CN 115344362 A CN115344362 A CN 115344362A
Authority
CN
China
Prior art keywords
weight
task
counting
machine
task machine
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.)
Pending
Application number
CN202210787472.0A
Other languages
English (en)
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.)
Bank of China Financial Technology Co Ltd
Original Assignee
Bank of China Financial 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 Bank of China Financial Technology Co Ltd filed Critical Bank of China Financial Technology Co Ltd
Priority to CN202210787472.0A priority Critical patent/CN115344362A/zh
Publication of CN115344362A publication Critical patent/CN115344362A/zh
Pending legal-status Critical Current

Links

Images

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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • G06F9/5088Techniques for rebalancing the load in a distributed system involving task migration

Landscapes

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

Abstract

本发明提供一种动态任务负载调度方法及装置,该方法包括:将多个待执行任务,分配给当前进程;对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机;若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重;对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程;其中,所述随机数取值范围为零到计数权重覆盖范围最大值。该方法可兼顾负载均衡和故障转移,提高任务分配的可靠性,无需特定中间件及不依赖环境即可实现任务负载均衡调度。

Description

动态任务负载调度方法及装置
技术领域
本发明涉及计算机领域,尤其涉及一种动态任务负载调度方法及装置。
背景技术
在服务器应用过程中,时常面对多任务多机并行调度分派任务问题,此时涉及负载均衡及故障转移的实现。
各厂商针对自身的中间件产品均有不同的负载均衡及故障转移方案,如ORACLE的RAC机制,或者适用微服务体系中的Eureka等开源中间件等。但这些负载均衡及故障转移方案需要引进第三方软件实现,通常会涉及一些问题:安全性、隐私性、价格昂贵和难适配等,同时任务分配的可靠性也难以保证。
发明内容
针对现有技术存在的问题,本发明提供一种动态任务负载调度方法及装置。
本发明提供一种动态任务负载调度方法,包括:将多个待执行任务,分配给当前进程;对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机;若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重;对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程;其中,第一个任务机的权重覆盖范围为零到第一个任务机的计数权重;其它每个任务机的计数权重覆盖范围,根据上一任务机的权重覆盖范围最大值以及最大值加上当前任务机的计数权重确定;所述随机数取值范围为零到计数权重覆盖范围最大值。
根据本发明提供的一种动态任务负载调度方法,所述将多个待执行任务,分配给当前进程,包括:从包括多个任务的任务列表中,获取额定数目的待执行任务,所述额定数目根据预先配置的进程数量和进程容量确定;将所述待执行任务,按照所述进程容量,分配给每个当前进程。
根据本发明提供的一种动态任务负载调度方法,所述将所述待执行任务,按照所述进程容量,分配给每个当前进程,包括:生成第二随机数;根据任务序号和所述第二随机数之和,按照进程总数取模,得到每个任务待分配进程的序号。
根据本发明提供的一种动态任务负载调度方法,所述根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重,包括:根据故障权重和故障次数,确定计数权重的减少部分;根据当前计数权重减去所述减少部分,得到更新后的计数权重。
根据本发明提供的一种动态任务负载调度方法,所示根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重,包括:若减少后的计数权重小于预设最低访问阈值,则将所述计数权重更新为最低访问阈值。
根据本发明提供的一种动态任务负载调度方法,所述方法还包括:按照预设周期遍历每个目标任务机,检测目标任务机上一分配进程是否执行完成;若完成,则根据任务负荷权重,增加所述目标任务机的计数权重。
根据本发明提供的一种动态任务负载调度方法,所述根据任务负荷权重,增加所述目标任务机的计数权重,包括:根据当前计数权重、任务负荷权重和故障权重之和,得到更新后的计数权重。
本发明还提供一种动态任务负载调度装置,包括:任务分配模块,用于将多个待执行任务,分配给当前进程;目标确定模块,用于对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机;权重更新模块,用于若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重;所述目标确定模块和所述权重更新模块,还用于对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程;其中,第一个任务机的权重覆盖范围为零到第一个任务机的计数权重;其它每个任务机的计数权重覆盖范围,根据上一任务机的权重覆盖范围最大值以及最大值加上当前任务机的计数权重确定;所述随机数取值范围为零到计数权重覆盖范围最大值。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述动态任务负载调度方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述动态任务负载调度方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述动态任务负载调度方法。
本发明提供的动态任务负载调度方法及装置,在出现故障时,根据目标任务机的当前计数权重和目标任务机当前已出现的故障次数,减少计数权重,同时分配成功,根据计数权重和任务负荷权重,减少计数权重,可兼顾负载均衡和故障转移,提高任务分配的可靠性,无需特定中间件及不依赖环境即可实现任务负载均衡调度。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的动态任务负载调度方法的流程示意图;
图2是本发明提供的动态任务负载调度方法的应用场景图;
图3是本发明提供的动态任务负载调度装置的结构示意图;
图4是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1-图4描述本发明的动态任务负载调度方法及装置。图1是本发明提供的动态任务负载调度方法的流程示意图,如图1所示,本发明提供动态任务负载调度方法,包括:
101、将多个待执行任务,分配给当前进程。
待执行任务通常可从任务列表中读取,待执行的任务列表中每一条任务有唯一编号。图2是本发明提供的动态任务负载调度方法的应用场景图,如图2所示,调度机获取任务列表后进行任务分派,执行进程获取到一个或多个任务后,被分派到某一任务机执行。调度负载均衡的目标是使当前任务尽量平均分配给各个任务进程,各个任务进程尽量平均负载在各个任务机上。
102、对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机。
其中,第一个任务机的权重覆盖范围为零到第一个任务机的计数权重;其它每个任务机的计数权重覆盖范围,根据上一任务机的权重覆盖范围最大值以及最大值加上当前任务机的计数权重确定;所述随机数取值范围为零到计数权重覆盖范围最大值。
每个任务机设有计数权重,计数权重是动态的,在一个任务分配后会发生变化。例如,四个任务机A、B、C、D的计数权重分别为3000、2000、1100和3000。那么随机数为整数的情况下,初始任务机A的计数权重覆盖范围就为0~3000,其它任务机B、C、D分别为3001~5000、5001~6100、6101~9100,随机数的取值为0~9000。当然随机数不为整数的情况下,可以为分别为3000~5000、5000~6100、6100~9100,此时就需要规定范围区间的那个部分为开哪个部分为闭,例如A、B、C、D分别为[0,3000)、[3000,5000)、[5000,6100)、[6100,9100]。
在上述情况下,假设随机数为8100,则落入任务机D的计数权重范围。
103、若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重。
本发明考虑到目标及分配过程的故障情况,例如出现网络通讯或其他问题,此时在计数权重的基础上减去反映故障次数的权重部分,若正常分配,则在计数权重的基础上减去反映任务负荷的权重部分,更新后的计数权重继续用于下次分配。通过本发明的方法,可以使分配时出现故障的任务机计数权重减少,降低下次被选取的概率,而且出现故障的次数越多,计数权重更新后越小,被选取的概率更低。同样,考虑到正常分配,也减去反映任务负荷的权重,降低下次被选取的概率。其中,任务负荷权重,反映每个任务的开销程度,对于每个进程处理相同任务数量的情况下,每个任务机的任务负荷权重可设置相同值,如上述任务机A、B、C、D的任务负荷权均为100。
104、对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程。
对于没有分配的进程,重复上述102~103的步骤。需要说明的是,103中若分配出现故障的进程,也属于未分配进程,通过上述102~103重新分配。
本发明的动态任务负载调度方法,在出现故障时,根据目标任务机的当前计数权重和目标任务机当前已出现的故障次数,减少计数权重,同时分配成功,根据计数权重和任务负荷权重,减少计数权重,可兼顾负载均衡和故障转移,提高任务分配的可靠性,无需特定中间件及不依赖环境即可实现任务负载均衡调度。
在一个实施例中,所述将多个待执行任务,分配给当前进程,包括:从包括多个任务的任务列表中,获取额定数目的待执行任务,所述额定数目根据预先配置的进程数量和进程容量确定;将所述待执行任务,按照所述进程容量,分配给每个当前进程。
任务列表为序号和任务内容描述字段的列表,例如包括100个待处理任务的任务列表。并行度参数代表最大存在多少个任务进程,记为Q。进程容量代表单个任务进程最大串行执行的任务数目,记为C。则额定数目为N=Q*C。
在一个实施例中,所述将所述待执行任务,按照所述进程容量,分配给每个当前进程,包括:生成第二随机数;根据任务序号和所述第二随机数之和,按照进程总数取模,得到每个任务待分配进程的序号。
具体而言,分配方法如下:按照Pid=(SeqNo+R)mod Q的结果将任务分配给各个任务进程,其中Pid为Q个任务进程的进程编号(按照0到QP-1顺序编号),SeqNo为待处理任务的序号,R为0至Q-1之间的随机数,R可以置为常数0。
根据公式计算结果,取模操作每个Pid代表的任务进程均会获得C个任务,每个任务进程执行时会顺序完成这C个任务。
本发明实施例的方法,根据任务序号和所述第二随机数之和,按照并行度参数取模,得到待分配进程的序号,可避免防止某个任务进程卡死导致后续任务无法分配的问题。
在一个实施例中,所述根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重,包括:根据故障权重和故障次数,确定计数权重的减少部分;根据当前计数权重减去所述减少部分,得到更新后的计数权重。
故障权重可根据需要设置,分配进程时,发生网络通讯或其他问题,则更新目标任务机的计数权重为Ci=Ci-S*(W+1)。其中,S为故障权重,W为故障次数。
在一个实施例中,所述根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重,包括:若减少后的计数权重小于预设最低访问阈值,则将所述计数权重更新为最低访问阈值。
N为可设置的最低访问底线阈值,如果更新后的计数权重小于N,则计数权重更新为最低访问阈值N。通过该方法,可保证问题任务机有复活机制。
在一个实施例中,所述方法还包括:按照预设周期遍历每个目标任务机,检测目标任务机上一分配进程是否执行完成;若完成,则根据任务负荷权重,增加所述目标任务机的计数权重。
考虑到增加任务计算完成后任务机的分配概率,本发明实施例按照预设周期遍历每个目标任务机,检测目标任务机上一分配任务是否执行完成,若完成,则增加目标任务机的计数权重,从而使执行完成的任务机更大概率分配到新的进程。
在一个实施例中,所述根据任务负荷权重s,增加所述目标任务机的计数权重,包括:根据当前计数权重、任务负荷权重和故障权重之和,得到更新后的计数权重。
如果任务已完成,则更新计数权重Ci=Ci+s+S。s为任务负荷减少权重,和上述实施例相同。本发明实施例特别的增加S为故障权重,故障权重可根据需要设置,和上述实施例相同。本发明对完成的任务机计数权重增加故障权重值S,可以反映无故障正常处理任务的目标机的状态,进一步增加此类目标机分配任务进程的概率。
下面对本发明提供的动态任务负载调度装置进行描述,下文描述的动态任务负载调度装置与上文描述的动态任务负载调度方法可相互对应参照。
图3是本发明提供的动态任务负载调度装置的结构示意图,如图3所示,该动态任务负载调度装置包括:任务分配模块301、目标确定模块302和权重更新模块303。其中,任务分配模块301用于将多个待执行任务,分配给当前进程;目标确定模块302用于对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机;权重更新模块303用于若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重;所述目标确定模块和所述权重更新模块,还用于对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程;其中,第一个任务机的权重覆盖范围为零到第一个任务机的计数权重;其它每个任务机的计数权重覆盖范围,根据上一任务机的权重覆盖范围最大值以及最大值加上当前任务机的计数权重确定;所述随机数取值范围为零到计数权重覆盖范围最大值。
本发明实施例提供的装置实施例是为了实现上述各方法实施例的,具体流程和详细内容请参照上述方法实施例,此处不再赘述。
本发明实施例所提供的动态任务负载调度装置,其实现原理及产生的技术效果和前述动态任务负载调度方法实施例相同,为简要描述,动态任务负载调度装置实施例部分未提及之处,可参考前述动态任务负载调度方法实施例中相应内容。
图4是本发明提供的电子设备的结构示意图,如图4所示,该电子设备可以包括:处理器(processor)401、通信接口(Communications Interface)402、存储器(memory)403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信。处理器401可以调用存储器403中的逻辑指令,以执行动态任务负载调度方法,该方法包括:将多个待执行任务,分配给当前进程;对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机;若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重;对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程;其中,第一个任务机的权重覆盖范围为零到第一个任务机的计数权重;其它每个任务机的计数权重覆盖范围,根据上一任务机的权重覆盖范围最大值以及最大值加上当前任务机的计数权重确定;所述随机数取值范围为零到计数权重覆盖范围最大值。
此外,上述的存储器403中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的动态任务负载调度方法,该方法包括:将多个待执行任务,分配给当前进程;对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机;若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重;对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程;其中,第一个任务机的权重覆盖范围为零到第一个任务机的计数权重;其它每个任务机的计数权重覆盖范围,根据上一任务机的权重覆盖范围最大值以及最大值加上当前任务机的计数权重确定;所述随机数取值范围为零到计数权重覆盖范围最大值。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的动态任务负载调度方法,该方法包括:将多个待执行任务,分配给当前进程;对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机;若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重;对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程;其中,第一个任务机的权重覆盖范围为零到第一个任务机的计数权重;其它每个任务机的计数权重覆盖范围,根据上一任务机的权重覆盖范围最大值以及最大值加上当前任务机的计数权重确定;所述随机数取值范围为零到计数权重覆盖范围最大值。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种动态任务负载调度方法,其特征在于,包括:
将多个待执行任务,分配给当前进程;
对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机;
若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重;
对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程;
其中,第一个任务机的权重覆盖范围为零到第一个任务机的计数权重;其它每个任务机的计数权重覆盖范围,根据上一任务机的权重覆盖范围最大值以及最大值加上当前任务机的计数权重确定;所述随机数取值范围为零到计数权重覆盖范围最大值。
2.根据权利要求1所述的任务负载调度方法,其特征在于,所述将多个待执行任务,分配给当前进程,包括:
从包括多个任务的任务列表中,获取额定数目的待执行任务,所述额定数目根据预先配置的进程数量和进程容量确定;
将所述待执行任务,按照所述进程容量,分配给每个当前进程。
3.根据权利要求2所述的任务负载调度方法,其特征在于,所述将所述待执行任务,按照所述进程容量,分配给每个当前进程,包括:
生成第二随机数;
根据任务序号和所述第二随机数之和,按照进程总数取模,得到每个任务待分配进程的序号。
4.根据权利要求1所述的任务负载调度方法,其特征在于,所述根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重,包括:
根据故障权重和故障次数,确定计数权重的减少部分;
根据当前计数权重减去所述减少部分,得到更新后的计数权重。
5.根据权利要求1所述的任务负载调度方法,其特征在于,所述根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重,包括:
若减少后的计数权重小于预设最低访问阈值,则将所述计数权重更新为最低访问阈值。
6.根据权利要求1所述的任务负载调度方法,其特征在于,所述方法还包括:
按照预设周期遍历每个目标任务机,检测目标任务机上一分配进程是否执行完成;
若完成,则根据任务负荷权重,增加所述目标任务机的计数权重。
7.根据权利要求6所述的任务负载调度方法,其特征在于,所述根据任务负荷权重,增加所述目标任务机的计数权重,包括:
根据当前计数权重、任务负荷权重和故障权重之和,得到更新后的计数权重。
8.一种动态任务负载调度装置,其特征在于,包括:
任务分配模块,用于将多个待执行任务,分配给当前进程;
目标确定模块,用于对任一进程,根据生成的随机数落入的计数权重覆盖范围,确定目标任务机;
权重更新模块,用于若根据所述进程分配目标任务机出现故障,则根据目标任务机的当前计数权重和目标任务机已出现的故障次数,减少计数权重;若任务机分配成功,则根据计数权重和任务负荷权重,减少计数权重;
所述目标确定模块和所述权重更新模块,还用于对于每个未分配进程,重复上述确定目标任务机,直至根据分配故障和成功结果分别减少计数权重的过程;
其中,第一个任务机的权重覆盖范围为零到第一个任务机的计数权重;其它每个任务机的计数权重覆盖范围,根据上一任务机的权重覆盖范围最大值以及最大值加上当前任务机的计数权重确定;所述随机数取值范围为零到计数权重覆盖范围最大值。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述动态任务负载调度方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述动态任务负载调度方法。
CN202210787472.0A 2022-07-04 2022-07-04 动态任务负载调度方法及装置 Pending CN115344362A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210787472.0A CN115344362A (zh) 2022-07-04 2022-07-04 动态任务负载调度方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210787472.0A CN115344362A (zh) 2022-07-04 2022-07-04 动态任务负载调度方法及装置

Publications (1)

Publication Number Publication Date
CN115344362A true CN115344362A (zh) 2022-11-15

Family

ID=83947823

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210787472.0A Pending CN115344362A (zh) 2022-07-04 2022-07-04 动态任务负载调度方法及装置

Country Status (1)

Country Link
CN (1) CN115344362A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115933565A (zh) * 2022-12-23 2023-04-07 广东职业技术学院 一种agv任务交换方法、装置、系统和介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115933565A (zh) * 2022-12-23 2023-04-07 广东职业技术学院 一种agv任务交换方法、装置、系统和介质
CN115933565B (zh) * 2022-12-23 2023-10-20 广东职业技术学院 一种agv任务交换方法、装置、系统和介质

Similar Documents

Publication Publication Date Title
CN110888719A (zh) 一种基于web服务的分布式任务调度系统及方法
CN110457197B (zh) 服务测试方法、装置、计算机设备和存储介质
CN110609735B (zh) 任务管理方法、设备和计算机程序产品
CN110289983A (zh) 负载均衡应用创建方法、装置、计算机设备及存储介质
CN115344362A (zh) 动态任务负载调度方法及装置
CN112214288B (zh) 基于Kubernetes集群的Pod调度方法、装置、设备和介质
CN113760549B (zh) 一种pod部署方法及装置
CN111951000A (zh) 一种支付请求处理方法及装置
CN110502347B (zh) 任务负载调度方法及装置
CN115629854A (zh) 分布式任务调度方法、系统、电子设备和存储介质
CN115150399A (zh) 负载均衡方法、负载均衡装置、处理系统及存储介质
CN114048033A (zh) 跑批任务的负载均衡方法、装置及计算机设备
CN114528109A (zh) 资源请求方法、装置和系统
CN110764873B (zh) 一种虚拟机资源管理方法、系统及相关设备
CN111352710A (zh) 进程管理方法及装置、计算设备、存储介质
CN113220491B (zh) 远程调用自适应负载均衡方法、装置、系统及计算机装备
CN111597037B (zh) 作业分配方法、装置、电子设备及可读存储介质
CN115858133B (zh) 批量数据的处理方法、装置、电子设备及存储介质
CN111382139A (zh) 对数据库中同一账户的并行访问方法
CN112905223B (zh) 一种升级包的生成方法及装置、设备
CN112766768B (zh) 合同流程管理方法、装置、电子设备以及可读存储介质
CN112884586B (zh) 交易执行方法和区块链节点
CN115328646A (zh) 一种临界资源调度方法、装置、设备及存储介质
Yokouchi et al. Multiple-Backup Resource Allocation for Virtual Machines with Probabilistic Protection in Cloud
CN116775286A (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