[发明专利]一种任务执行方法和装置在审
申请号: | 202110084204.8 | 申请日: | 2021-01-21 |
公开(公告)号: | CN113742057A | 公开(公告)日: | 2021-12-03 |
发明(设计)人: | 张帅 | 申请(专利权)人: | 北京沃东天骏信息技术有限公司;北京京东世纪贸易有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F11/34 |
代理公司: | 中原信达知识产权代理有限责任公司 11219 | 代理人: | 郝红玉;王安娜 |
地址: | 100176 北京市北京经济技术*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 任务 执行 方法 装置 | ||
1.一种任务执行方法,其特征在于,包括:
通过与任务的输入源数据对应的预处理器,将所述任务的输入源数据转化为标准输入序列格式的任务;
按照所述任务的主题,将所述标准输入序列格式的任务保存至任务队列中;
监控表示服务器执行能力的综合指标,以确定可从所述任务队列拉取的任务数量,按照所述任务数量从所述任务队列中拉取所述任务;
基于预设线程模型,通过责任链的方式执行拉取的所述任务。
2.根据权利要求1所述的方法,其特征在于,所述监控表示服务器执行能力的综合指标,以确定可从任务队列拉取的任务数量,包括:
监控表示所述服务器执行能力的综合指标中的各种指标值是否达到对应的阈值,所述各种指标值包括服务器的负载能力指标值、上游接口处理能力指标值、数据库的负载能力指标值中的一种或多种;
当无指标值达到对应的阈值时,则按照拥塞控制算法确定所述可从任务队列拉取的任务数量,所述拥塞控制算法包括对任务拉取数量的如下各阶段的拥塞控制:指数增长阶段、拥塞避免阶段、稳定阶段;
当有指标值达到对应的阈值时,则由预设的起始值得到所述可从任务队列拉取的任务数量。
3.根据权利要求2所述的方法,其特征在于,所述监控表示所述服务器执行能力的综合指标中的各种指标值是否达到对应的阈值之前,包括:
根据每秒查询率和响应时间,对所述服务器的负载能力指标值、所述上游接口处理能力指标值、所述数据库的负载能力指标值的一种或多种进行统计。
4.根据权利要求2或3所述的方法,其特征在于,所述按照拥塞控制算法确定所述可从任务队列拉取的任务数量,包括:
在所述指数增长阶段,以上一次拉取的任务数为基准,按照指数规律增长,得到所述可从任务队列拉取的任务数量,其中,当不存在所述上一次拉取的任务数时,以所述预设的初始值为所述基准;
在所述拥塞避免阶段,在上一次拉取的任务数的基础上增加预设值,得到所述可从任务队列拉取的任务数量;
在所述稳定阶段,以预设的最大拉取值作为所述可从任务队列拉取的任务数量。
5.根据权利要求1所述的方法,其特征在于,所述基于预设线程模型,通过责任链的方式执行拉取的所述任务,包括:
在缓存中检索所述任务的执行成功记录;
在确定未检索到所述任务的执行成功记录的情况下,基于所述预设线程模型,将所述任务拆分成一个或多个子任务;
在所述责任链中执行所述任务的子任务,当所述子任务执行失败,则在未达到所述子任务的重试次数上限的条件下,在所述责任链中重试执行所述子任务,如果有所述子任务在重试次数达到所述重试次数上限后仍执行失败,则所述任务执行失败,将执行失败的所述任务重新保存到所述任务队列以重新执行。
6.根据权利要求5所述的方法,其特征在于,还包括:
若所述任务执行成功,则将所述任务的执行成功记录存入所述缓存,并设置缓存过期时间,其中,对于周期执行的所述任务,所述缓存在所述任务的下一执行周期过期。
7.一种任务执行装置,其特征在于,包括:
预处理模块,用于通过与任务的输入源数据对应的预处理器,将所述任务的输入源数据转化为标准输入序列格式的任务;
任务保存模块,用于按照所述任务的主题,将所述标准输入序列格式的任务保存至任务队列中;
任务拉取模块,用于监控表示服务器执行能力的综合指标,以确定可从所述任务队列拉取的任务数量,按照所述任务数量从所述任务队列中拉取所述任务;
任务执行模块,用于基于预设线程模型,通过责任链的方式执行拉取的所述任务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京沃东天骏信息技术有限公司;北京京东世纪贸易有限公司,未经北京沃东天骏信息技术有限公司;北京京东世纪贸易有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110084204.8/1.html,转载请声明来源钻瓜专利网。