System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及分布式,特别是涉及一种任务的执行方法、装置、电子设备和存储介质。
技术介绍
1、在分布式环境中,多个定时任务服务可能同时查询到同一个定时任务,并同时尝试执行该任务。这时,多个任务服务可能同时执行同一个任务,从而造成任务的重复执行和数据的不一致。
技术实现思路
1、鉴于上述问题,提出了以便提供克服上述问题或者至少部分地解决上述问题的一种任务的执行方法、装置、电子设备和存储介质,包括:
2、一种任务的执行方法,应用于分布式集群,所述分布式集群包括多台用于执行任务的服务器,针对所述分布式集群设置有任务执行记录表,所述方法包括:
3、接收所述分布式集群中任意一目标服务器的目标任务的任务执行权请求;
4、根据所述任务执行请求,生成针对所述目标任务的目标唯一键;
5、判断所述任务执行记录表中是否存储有所述目标唯一键;
6、当所述任务执行记录表中未存储有所述目标唯一键,则将所述目标唯一键新增至所述执行任务记录表中,并为所述目标服务器下发所述目标任务的任务执行权,以通过所述目标服务器执行所述目标任务。
7、可选地,所述任务执行请求包括有以注解形式存储的任务名称,所述根据所述任务执行请求,生成针对所述目标任务的目标唯一键,包括:
8、根据所述任务名称和时间戳,生成针对所述目标任务的目标唯一键。
9、可选地,所述根据所述任务名称和时间戳,生成针对所述目标任务的目标唯一键,包括:
1
11、根据格式化后的时间戳和所述任务名称,生成所述目标唯一键。
12、可选地,所述任务执行请求还包括有以注解形式存储的开启指令,所述方法还包括:
13、判断所述开启指令的类型,类型包括开启和不开启;
14、当所述开启指令的类型为开启时,执行根据所述任务执行请求,生成针对所述目标任务的目标唯一键的步骤。
15、可选地,所述将所述目标唯一键新增至所述执行任务记录表中,并为所述目标服务器下发所述目标任务的任务执行权,包括:
16、执行将所述目标唯一键新增至所述执行任务记录表中的操作,并判断是否将所述目标唯一键新增至所述执行任务记录表中;
17、当将所述目标唯一键新增至所述执行任务记录表中时,执行对所述目标任务的版本号进行更新的操作;
18、当针对所述目标任务的版本号更新完成时,为所述目标服务器下发所述目标任务的任务执行权。
19、可选地,所述方法还包括:
20、在执行将所述目标唯一键新增至所述执行任务记录表中的操作后,若未将所述目标唯一键成功新增至所述执行任务记录表中,则针对所述目标服务器进行异常记录;
21、在执行对所述目标任务的版本号进行更新的操作后,若未对目标任务的版本号成功更新,则针对所述目标服务器进行异常记录。
22、可选地,所述方法还包括:
23、当针对所述分布式集群中的各个服务器所进行的异常记录满足预设条件时,针对所述分布式集群进行告警提醒。
24、本专利技术实施例还提供了一种任务的执行装置,应用于分布式集群,所述分布式集群包括多台用于执行任务的服务器,针对所述分布式集群设置有任务执行记录表,所述装置包括:
25、请求模块,用于接收所述分布式集群中任意一目标服务器的目标任务的任务执行权请求;
26、唯一键生成模块,用于根据所述任务执行请求,生成针对所述目标任务的目标唯一键;
27、第一判断模块,用于判断所述任务执行记录表中是否存储有所述目标唯一键;
28、执行模块,用于当所述任务执行记录表中未存储有所述目标唯一键,则将所述目标唯一键新增至所述执行任务记录表中,并为所述目标服务器下发所述目标任务的任务执行权,以通过所述目标服务器执行所述目标任务。
29、可选地,所述任务执行请求包括有以注解形式存储的任务名称,所述唯一键生成模块,用于根据所述任务名称和时间戳,生成针对所述目标任务的目标唯一键。
30、可选地,所述唯一键生成模块,用于对所述时间戳进行格式化;根据格式化后的时间戳和所述任务名称,生成所述目标唯一键。
31、可选地,所述任务执行请求还包括有以注解形式存储的开启指令,所述装置还包括:
32、第二判断模块,用于判断所述开启指令的类型,类型包括开启和不开启;
33、所述唯一键生成模块,用于当所述开启指令的类型为开启时,根据所述任务执行请求,生成针对所述目标任务的目标唯一键。
34、可选地,所述执行模块,用于执行将所述目标唯一键新增至所述执行任务记录表中的操作,并判断是否将所述目标唯一键新增至所述执行任务记录表中;当将所述目标唯一键新增至所述执行任务记录表中时,执行对所述目标任务的版本号进行更新的操作;当针对所述目标任务的版本号更新完成时,为所述目标服务器下发所述目标任务的任务执行权。
35、可选地,所述装置还包括:
36、异常检测模块,用于在执行将所述目标唯一键新增至所述执行任务记录表中的操作后,若未将所述目标唯一键成功新增至所述执行任务记录表中,则针对所述目标服务器进行异常记录;在执行对所述目标任务的版本号进行更新的操作后,若未对目标任务的版本号成功更新,则针对所述目标服务器进行异常记录。
37、可选地,所述装置还包括:
38、异常提醒模块,用于当针对所述分布式集群中的各个服务器所进行的异常记录满足预设条件时,针对所述分布式集群进行告警提醒。
39、本专利技术实施例还提供了一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上的任务的执行方法。
40、本专利技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上的任务的执行方法。
41、本专利技术实施例具有以下优点:
42、本专利技术实施例中,接收分布式集群中任意一目标服务器的目标任务的任务执行权请求;根据任务执行请求,生成针对目标任务的目标唯一键;判断任务执行记录表中是否存储有目标唯一键;当任务执行记录表中未存储有目标唯一键,则将目标唯一键新增至执行任务记录表中,并为目标服务器下发目标任务的任务执行权,以通过目标服务器执行目标任务。通过本专利技术实施例,可以对分布式集群的服务器进行管理,从而避免多台服务器同时执行同一任务。
本文档来自技高网...【技术保护点】
1.一种任务的执行方法,其特征在于,应用于分布式集群,所述分布式集群包括多台用于执行任务的服务器,针对所述分布式集群设置有任务执行记录表,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述任务执行请求包括有以注解形式存储的任务名称,所述根据所述任务执行请求,生成针对所述目标任务的目标唯一键,包括:
3.根据权利要求2所述的方法,其特征在于,所述根据所述任务名称和时间戳,生成针对所述目标任务的目标唯一键,包括:
4.根据权利要求1所述的方法,其特征在于,所述任务执行请求还包括有以注解形式存储的开启指令,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述将所述目标唯一键新增至所述执行任务记录表中,并为所述目标服务器下发所述目标任务的任务执行权,包括:
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
8.一种任务的执行装置,其特征在于,应用于分布式集群,所述分布式集群包括多台用于执行任务的服务器,针对所述分
9.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述任务的执行方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述任务的执行方法。
...【技术特征摘要】
1.一种任务的执行方法,其特征在于,应用于分布式集群,所述分布式集群包括多台用于执行任务的服务器,针对所述分布式集群设置有任务执行记录表,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述任务执行请求包括有以注解形式存储的任务名称,所述根据所述任务执行请求,生成针对所述目标任务的目标唯一键,包括:
3.根据权利要求2所述的方法,其特征在于,所述根据所述任务名称和时间戳,生成针对所述目标任务的目标唯一键,包括:
4.根据权利要求1所述的方法,其特征在于,所述任务执行请求还包括有以注解形式存储的开启指令,所述方法还包括:
5.根据权利要求1所述的方法,其特征在于,所述将所述目标唯一键新增至所述执行任务记录表中,并为所述目标服务器下发所述目标任...
【专利技术属性】
技术研发人员:玄勇,赵轶新,蒋艳军,程玉文,
申请(专利权)人:中国电信股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。