[发明专利]请求分配方法及装置有效
申请号: | 201710944087.1 | 申请日: | 2017-09-30 |
公开(公告)号: | CN107704322B | 公开(公告)日: | 2020-08-25 |
发明(设计)人: | 许俊豪;曲仲元;金梦 | 申请(专利权)人: | 上海大象金泰科技有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 梁洪文 |
地址: | 201700 上海市青*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 请求 分配 方法 装置 | ||
本发明公开了一种请求分配方法及装置,属于互联网技术领域。所述方法包括:获取请求队列中k个待处理请求的预计处理耗时的总和;根据k个待处理请求的预计处理耗时的总和,以及用于执行k个待处理请求的线程数量n,计算n个线程中的每一个线程对应的切片时间;根据n个线程中的每一个线程对应的切片时间,分别为n个线程中的每一个线程分配待处理请求,其中,为n个线程中的第i个线程分配的待处理请求的数量为p,p个待处理请求的预计处理耗时的总和不大于第i个线程对应的切片时间。通过计算每个线程对应的切片时间,并将其作为为每个线程分配待处理请求时的依据,减少了处理请求队列中所有待处理请求的总耗时,提高了整体处理效率。
技术领域
本发明实施例涉及互联网技术领域,特别涉及一种请求分配方法及装置。
背景技术
接口是服务提供设备用于向服务请求设备提供资源和信息的通道,而接口请求正是服务请求设备向服务提供设备发送的用于获取其内部资源和信息的请求。当大量接口请求高并发时,如何更高效地处理这些接口请求,往往取决于分配这些接口请求的方法。
在相关技术中,大多采用开启多个线程并行处理接口请求的方法,使得同一时间内可以处理多个接口请求,以缩短处理大量接口请求所需的耗时。相关技术在为多个线程分配接口请求时,通常为每个线程分配相同数量的接口请求。
但是,不同的接口请求用于获取不同的资源和信息,且不同的接口请求的处理耗时也各不相同,通过上述分配方法,容易导致某些线程因被分配到耗时较长的待处理请求而相较于其它线程延后较长时间处理完,从而降低了请求队列的整体处理效率。
发明内容
本发明实施例提供了一种请求分配方法及装置,可用于解决相关技术中因缺乏合理的分配方法而使得处理接口请求的耗时较长、效率较低的问题。所述技术方案如下:
根据本发明实施例的第一方面,提供一种请求分配方法,所述方法包括:
获取请求队列中k个待处理请求的预计处理耗时的总和,所述k为大于1的整数;
根据所述k个待处理请求的预计处理耗时的总和,以及用于执行所述k个待处理请求的线程数量n,计算所述n个线程中的每一个线程对应的切片时间,所述n为大于1的整数;
根据所述n个线程中的每一个线程对应的切片时间,分别为所述n个线程中的每一个线程分配待处理请求,其中,为所述n个线程中的第i个线程分配的待处理请求的数量为p,所述p个待处理请求的预计处理耗时的总和不大于所述第i个线程对应的切片时间,所述p为小于k的正整数,所述i为小于或等于n的正整数。
在一种可能的实施方式中,所述根据所述k个待处理请求的预计处理耗时的总和,以及用于执行所述k个待处理请求的线程数量n,计算所述n个线程中的每一个线程对应的切片时间,包括:
获取所述k个待处理请求的超时率的平均值,所述待处理请求的超时率是指所述待处理请求发生超时情况的概率;
若所述平均值等于0,则将所述k个待处理请求的预计处理耗时的总和与所述线程数量n相除,得到所述切片时间;
若所述平均值大于0,则计算所述线程数量n和第一系数a的乘积,并将所述k个待处理请求的预计处理耗时的总和与所述乘积相除,得到所述切片时间,所述a大于1。
在另一种可能的实施方式中,所述获取所述k个待处理请求的超时率的平均值,包括:
获取每一种类型的请求的历史统计数据,其中,目标类型的请求的历史统计数据包括:所述目标类型的请求在历史统计周期内的统计数量,以及所述目标类型的请求中的每一个请求的实际处理耗时;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海大象金泰科技有限公司,未经上海大象金泰科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710944087.1/2.html,转载请声明来源钻瓜专利网。