[发明专利]一种任务执行方法、装置、电子设备和存储介质在审
| 申请号: | 202110431134.9 | 申请日: | 2021-04-21 |
| 公开(公告)号: | CN113127172A | 公开(公告)日: | 2021-07-16 |
| 发明(设计)人: | 李光远 | 申请(专利权)人: | 上海销氪信息科技有限公司 |
| 主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/50 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 豆贝贝 |
| 地址: | 200441 上海*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 任务 执行 方法 装置 电子设备 存储 介质 | ||
本申请公开了一种任务执行方法,包括:获取当前服务器在Redis队列中的目标位置标号,并查询各个任务的任务标识;所述Redis队列用于存储各个服务器的IP;根据任务标识,确定与目标位置标号匹配的任务标识,并将与目标位置标号匹配的任务标识所对应的任务确定为在当前服务器上执行的任务;在确定当前服务器执行的任务后,执行相应的任务。该方法能够保证某些任务需要在同一服务器被执行的业务逻辑,且对于可并行的任务能够在多个服务器同时被执行,既保证了业务逻辑不被影响,还能够提高任务执行效率。本申请同时还提供了一种任务执行装置、一种电子设备和计算机可读存储介质,具有上述有益效果。
技术领域
本申请涉及计算机技术领域,特别涉及一种任务执行方法、装置、电子设备和计算机可读存储介质。
背景技术
目前,为了不影响业务逻辑,业务人员在项目执行之前就将项目下的各个任务设定在某一服务器中执行,效率低且容易阻塞,易造成服务器负载过大导致任务失败。或者是为了提高执行效率,简单粗暴的将项目的各个任务直接分布到不同的服务器下执行,导致必须在同一服务器执行任务的业务逻辑被打乱,造成任务失败。
发明内容
本申请的目的是提供一种任务执行方法,能够保证某些任务需要在同一服务器被执行的业务逻辑,且对于可并行的任务能够在多个服务器同时被执行,又保证了业务逻辑不被影响,还能够提高任务执行效率。其具体方案如下:
第一方面,本申请公开了一种任务执行方法,包括:
获取当前服务器在Redis队列中的目标位置标号,并查询各个任务的任务标识;所述Redis队列用于存储各个服务器的IP;
根据所述任务标识,确定与所述目标位置标号匹配的任务标识,并将与所述目标位置标号匹配的任务标识所对应的任务确定为在所述当前服务器上执行的任务;
在确定所述当前服务器执行的任务后,执行相应的任务。
可选的,所述根据所述任务标识,确定与所述目标位置标号匹配的任务标识,包括:
对所述各个任务的任务标识与所述Redis队列的队列长度进行求余,生成各个余数;
将等于所述目标位置标号的余数,确定为与所述目标位置标号匹配的任务标识。
可选的,在所述执行相应的任务之后,还包括:
判断所述当前服务器上执行的任务是否存活;
若否,则重启所述当前服务器,并执行当前任务。
可选的,在重启所述当前服务器之前,还包括:
判断所述当前任务被执行的次数是否大于预设阈值;
若是,则记录所述当前任务执行失败;
若否,则执行所述重启所述当前服务器的步骤。
可选的,若所述当前服务器上执行的任务未存活时,则重启所述当前服务器,并执行当前任务,包括:
若所述当前服务器上执行的任务未存活时,重启所述当前服务器,并确定重启后所述当前服务器的IP;
将所述Redis队列中重启前当前服务器的IP替换为重启后当前服务器的IP,并执行所述当前任务。
可选的,在获取当前服务器在Redis队列中的目标位置标号之前,还包括:
判断所述当前服务器的IP是否存储于所述Redis队列中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海销氪信息科技有限公司,未经上海销氪信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110431134.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于数据实现的主题卡显示系统及方法
- 下一篇:校园车辆接送方法及系统





