[发明专利]任务调度方法、系统、设备及介质在审
申请号: | 202011416121.6 | 申请日: | 2020-12-04 |
公开(公告)号: | CN112395067A | 公开(公告)日: | 2021-02-23 |
发明(设计)人: | 沈亮亮 | 申请(专利权)人: | 深圳前海微众银行股份有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48;G06F9/54 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 张志江 |
地址: | 518000 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 任务 调度 方法 系统 设备 介质 | ||
本发明涉及金融科技(Fintech)技术领域,公开了一种任务调度方法,包括:接收对第一任务的执行请求,获取第一任务的服务时间以及任务调度队列中各个待执行任务的服务时间;基于第一任务的服务时间与各个待执行任务的服务时间,按照服务时间的大小对第一任务和各个待执行任务进行排序,得到新的任务调度队列,按照服务时间的大小依次执行新的任务调度队列中的任务,服务时间越小的任务在新的任务调度队列中越靠近队头。通过在新任务到达时,根据任务的服务时间对任务执行顺序进行重排,重排时从任务调度队列的队头到队尾按照服务时间从小到大的顺序排列,保证服务时间最短的任务优先被执行,从而降低任务的平均等待时间。
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及任务调度方法、系统、设备及计算机存储介质。
背景技术
随着计算机技术的发展,越来越多的技术(大数据、分布式、人工智能等)应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,但由于金融行业的安全性、通用性要求,也对任务调度技术提出了更高的要求。
在应用程式中,为了提高系统的吞吐量,多会采用队列的技术进行数据的传输,队列即存在先进先出,或是先进后出的机制,以队列的先进先出机制来说,入队的第一个元素,必然也会第一个出队,优先进行后续的数据处理,待处理完后下一个元素出队,后续元素以此类推。
现有技术中,任务调度的思路是每次调度从就绪队列中选择一个最先进入该队列的任务,使之投入运行,该任务一直运行到完成或发生某事件而阻塞后才放弃优先权,进而从剩余就绪队列中再选择一个最先进入该队列的任务,使之投入运行。但是,由于每个任务(除了第一个)都会存在等待时间的可能性,这种以任务请求到达时间的先后顺序逐条执行各个任务请求的方案可能会导致任务的平均等待时间过长,进而导致系统吞吐量降低。
发明内容
本发明的主要目的在于提出一种任务调度方法、系统、设备及计算机存储介质,旨在降低任务的平均等待时间。
为实现上述目的,本发明提供一种任务调度方法,所述任务调度方法包括如下步骤:
接收对第一任务的执行请求,获取所述第一任务的服务时间以及任务调度队列中各个待执行任务的服务时间;
基于所述第一任务的服务时间与各个所述待执行任务的服务时间,按照服务时间的大小对所述第一任务和各个所述待执行任务进行排序,得到新的任务调度队列,按照服务时间的大小依次执行所述新的任务调度队列中的任务,其中,服务时间越小的任务在新的任务调度队列中越靠近队头。
可选地,所述按照服务时间的大小对所述第一任务和各个所述待执行任务进行排序,得到新的任务调度队列的步骤包括:
确定所述第一任务和所述待执行任务中是否存在服务时间相同的第二任务;
若存在,则按照服务时间的大小对所述第二任务与其他任务进行排序,并按照所述第二任务的任务请求时间的先后顺序对所述第二任务进行排序,得到新的任务调度队列。
可选地,所述接收对第一任务的执行请求的步骤之后,还包括:
确定任务调度队列中是否存在未出队的任务以及是否存在正在被执行的任务;
若任务调度队列中不存在未出队的任务且不存在正在被执行的任务,则执行所述第一任务;
若任务调度队列中存在未出队的任务,和/或,存在正在被执行的任务,则执行步骤:获取所述第一任务的服务时间以及任务调度队列中各个待执行任务的服务时间。
可选地,所述按照服务时间的大小对所述第一任务和各个所述待执行任务进行排序,得到新的任务调度队列的步骤之后,还包括:
对所述新的任务调度队列中的各个任务的等待时间进行监测;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳前海微众银行股份有限公司,未经深圳前海微众银行股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011416121.6/2.html,转载请声明来源钻瓜专利网。