[发明专利]任务处理方法及装置在审
申请号: | 202011320055.2 | 申请日: | 2020-11-23 |
公开(公告)号: | CN112286669A | 公开(公告)日: | 2021-01-29 |
发明(设计)人: | 符柱;朱少卿 | 申请(专利权)人: | 上海商汤智能科技有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 靳玫 |
地址: | 200233 上海市徐*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 任务 处理 方法 装置 | ||
本公开涉及云计算技术领域,具体提供了一种任务处理方法及装置。任务处理方法包括:获取多个任务数据;所述多个任务数据是与租户购买的所述云平台系统上的服务相关的任务数据,并且所述多个任务数据中的每一个任务数据均包括任务的触发时间;将所述多个任务数据存储于数据库,并定期由所述数据库中获取目标任务;所述目标任务包括触发时间在第一预设时间阈值内的任务数据;将所述目标任务发送至任务队列,并通过定时触发器将所述任务队列的各任务在对应的触发时间运行。本公开方法实现多租户云平台系统的海量长时间跨度任务的实时触发。
技术领域
本公开涉及云计算技术领域,具体涉及一种任务处理方法及装置。
背景技术
以云计算技术建立起来的软件运行平台称为云平台,租户可以通过云平台按需购买各种服务,无需搭建IT基础设施,从而节省采购和运维成本。
在多租户的云平台系统中,由租户购买服务产生的任务总数往往达到百万级,并且租户购买服务的时间跨度可以长达几年,每一种服务的时间计量单位也不同,例如会有月、天、分钟等各种粒度,由购买服务产生的任务也需要在不同粒度的时间点触发运行。
相关技术中的云平台系统,无法同时满足大量且长时间跨度的任务实时触发。
发明内容
为解决云平台系统大量且长时间跨度的任何实时触发的技术问题,本公开实施方式提供了一种任务处理方法及装置。
第一方面,本公开实施方式提供了一种任务处理方法,应用于云平台系统,所述方法包括:
获取多个任务数据;所述多个任务数据是与租户购买的所述云平台系统上的服务相关的任务数据,并且所述多个任务数据中的每一个任务数据均包括任务的触发时间;
将所述多个任务数据存储于数据库,并定期由所述数据库中获取目标任务;所述目标任务包括触发时间在第一预设时间阈值内的任务数据;
将所述目标任务发送至任务队列,并通过定时触发器将所述任务队列的各任务在对应的触发时间运行。
在一些实施方式中,所述将所述多个任务数据存储于数据库,包括:
在所述多个任务数据中确定第一任务和第二任务,所述第一任务是触发时间在第二预设时间阈值内的各任务数据,所述第二任务是除所述第一任务之外的各任务数据;所述第二预设时间阈值小于或等于所述第一预设时间阈值;
将所述第一任务发送至所述任务队列,并且,将所述第一任务和所述第二任务存储于所述数据库。
在一些实施方式中,所述任务数据包括状态信息和所述触发时间;所述方法还包括:
响应于所述任务数据的当前处理状态发生变化,将所述任务数据的状态信息设置为与所述当前处理状态对应的状态信息。
在一些实施方式中,响应于所述任务数据的当前处理状态发生变化,将所述任务数据的状态信息设置为与所述当前处理状态对应的状态信息,包括:
响应于所述任务数据未被注册至所述定时触发器,将所述任务数据的状态信息设置为未注册状态;
响应于所述任务数据已被注册至所述定时触发器,且尚未在对应的触发时间运行,将所述任务数据的状态信息设置为已注册状态;
响应于所述任务数据在对应的触发时间运行且运行成功,将所述任务数据的状态信息设置为已完成状态;
响应于所述任务数据在对应的触发时间运行且运行失败,并且所述任务数据的失败次数未超过预设阈值,将所述任务数据的状态信息设置为未完成状态。
在一些实施方式中,所述定期由所述数据库中获取目标任务,包括:
定期获取所述数据库中的各所述任务数据的状态信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海商汤智能科技有限公司,未经上海商汤智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011320055.2/2.html,转载请声明来源钻瓜专利网。