本发明涉及分布式任务调度,具体涉及一种移动端分布式任务的调度方法、装置及电子设备。
背景技术:
1、分布式任务是指任务程序分布在多个终端设备,由该多个终端设备共同执行的任务。分布式任务的任务执行者分为任务领导者和普通执行者,一个分布式任务仅有一个任务领导者,当任务领导者中途退出分布式任务时,需要及时从普通执行者中选举新的任务领导者。
2、目前,当任务领导者中途退出分布式任务时,一般采用由普通执行者进行投票的方式,来选举新的任务领导者。具体的,每个普通执行者均可以为一名普通执行者投票,最终选举票数最多,且票数超过普通执行者数量一半的普通执行者为新的任务领导者。
3、对于任务程序分布在移动终端的分布式任务(下称移动端分布式任务),移动端分布式任务的执行场景为通过打开对应移动终端上的分布式任务app来执行分布式任务,一般情况下,用户不会长时间打开分布式任务app,也即,任务执行者(包括任务领导者)不会长时间连续地执行移动端分布式任务,使得该场景下,需要频繁的进行任务领导者选举。在更换任务领导者时,需要暂停移动端分布式任务,因此,任务领导者的更换频率越高,对应的移动端分布式任务的执行时长越长。而现有技术的任务领导者选举方法难以降低移动端分布式任务的任务领导者更换频率,使得现有技术存在难以缩短移动端分布式任务的执行时长的问题。
技术实现思路
1、为了解决现有技术的任务领导者选举方法,存在难以缩短移动端分布式任务的执行时长的问题,本发明提供了一种移动端分布式任务的调度方法、装置及电子设备。
2、本发明的技术方案如下:
3、本发明提供了一种移动端分布式任务的调度方法,包括:
4、获取移动端分布式任务的任务领导者状态变更数据;所述任务领导者状态变更数据包括退出任务指示;
5、若所述移动端分布式任务未结束,则获取所述移动端分布式任务的各个普通执行者的活跃度;所述活跃度等于与该活跃度对应的普通执行者的各个指定值之和,所述各个指定值包括该普通执行者的各个指定执行时长分别与对应的第一预设权重之积,所述各个指定执行时长为该普通执行者在与所述活跃度对应的预设时间段内的各个执行时长,所述执行时长为与该执行时长对应的普通执行者连续执行与该执行时长对应的任务的时长;
6、从所述各个普通执行者中选取出活跃度最高的普通执行者;
7、将所述活跃度最高的普通执行者,作为所述移动端分布式任务的任务领导者。
8、本发明还提供了一种移动端分布式任务的调度装置,包括:任务管理服务器和任务调度服务器;
9、所述任务管理服务器用于获取移动端分布式任务的任务领导者状态变更数据,并将所述任务领导者状态变更数据发送给所述任务调度服务器;所述任务领导者状态变更数据包括退出任务指示;
10、所述任务调度服务器用于若根据所述任务领导者状态变更数据确定出所述移动端分布式任务的任务领导者在所述移动端分布式任务未结束之前退出所述移动端分布式任务,则获取所述移动端分布式任务的各个普通执行者的活跃度,并从所述各个普通执行者中选取出活跃度最高的普通执行者,以及将所述活跃度最高的普通执行者,作为所述移动端分布式任务的任务领导者;其中,所述活跃度等于与该活跃度对应的普通执行者的各个指定值之和,所述各个指定值包括该普通执行者的各个指定执行时长分别与对应的第一预设权重之积,所述各个指定执行时长为该普通执行者在与所述活跃度对应的预设时间段内的各个执行时长,所述执行时长为与该执行时长对应的普通执行者连续执行与该执行时长对应的任务的时长。
11、本发明还提供了一种电子设备,包括:
12、至少一个处理器;以及,
13、与所述至少一个处理器通信连接的存储器;其中,
14、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
15、获取移动端分布式任务的任务领导者状态变更数据;所述任务领导者状态变更数据包括退出任务指示;
16、若所述移动端分布式任务未结束,则获取所述移动端分布式任务的各个普通执行者的活跃度;所述活跃度等于与该活跃度对应的普通执行者的各个指定值之和,所述各个指定值包括该普通执行者的各个指定执行时长分别与对应的第一预设权重之积,所述各个指定执行时长为该普通执行者在与所述活跃度对应的预设时间段内的各个执行时长,所述执行时长为与该执行时长对应的普通执行者连续执行与该执行时长对应的任务的时长;
17、从所述各个普通执行者中选取出活跃度最高的普通执行者;
18、将所述活跃度最高的普通执行者,作为所述移动端分布式任务的任务领导者。
19、本发明采用上述技术方案,具备如下有益效果:
20、一种移动端分布式任务的调度方法,包括:若移动端分布式任务的任务领导者中途退出任务,则获取该移动端分布式任务的各个普通执行者的活跃度,并选取活跃度最高的普通执行者,作为该移动端分布式任务的任务领导者。其中,所述活跃度等于与该活跃度对应的普通执行者的各个指定值之和,所述各个指定值包括该普通执行者的各个指定执行时长分别与对应的第一预设权重之积,所述各个指定执行时长为该普通执行者在与所述活跃度对应的预设时间段内的各个执行时长,所述执行时长为与该执行时长对应的普通执行者连续执行与该执行时长对应的任务的时长。简言之,活跃度对应的预设时间段内的各个执行时长均对该活跃度有贡献,这使得活跃度能够用于衡量对应的普通执行者的关于本移动端分布式任务的执行时长,即该普通执行者的活跃度越高,该普通执行者关于本移动端分布式任务的执行时长可能越长。进而,由于本申请选取活跃度最高的普通执行者为新的任务领导者,使得本申请选取出的任务领导者,是各个普通执行者中关于本移动端分布式任务的执行时长最长的普通执行者概率更高。由于任务领导者的执行时长越长,更换任务领导者的频率越低,因此,本申请能够降低移动端分布式任务的任务领导者更换频率,进而使得本申请能够缩短移动端分布式任务的执行时长。
1.一种移动端分布式任务的调度方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述活跃度的计算方法包括:
3.根据权利要求2所述的方法,其特征在于,所述子预设时间段在时间轴上的位置越靠前,该子预设时间段的第二预设权重越大。
4.根据权利要求3所述的方法,其特征在于,所述子预设时间段在时间轴上的位置越靠前,该子预设时间段的时长越短。
5.根据权利要求1所述的方法,其特征在于,预设时间段具体为指定时刻之前,且包含所述指定时刻,以及长度为预设时间长度的时间段,所述指定时刻为开始计算或更新与该预设时间段对应的活跃度的时刻。
6.根据权利要求1所述的方法,其特征在于,还包括:
7.根据权利要求1所述的方法,其特征在于,还包括:
8.根据权利要求1所述的方法,其特征在于,所述将所述活跃度最高的普通执行者,作为所述移动端分布式任务的任务领导者之后,还包括:
9.一种移动端分布式任务的调度装置,其特征在于,包括:任务管理服务器和任务调度服务器;
10.一种电子设备,其特征在于,包括: