[发明专利]线程分配方法及装置有效
申请号: | 201610342244.7 | 申请日: | 2016-05-20 |
公开(公告)号: | CN107402810B | 公开(公告)日: | 2020-07-14 |
发明(设计)人: | 赵凯;朱志强;杜华兵;王力 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京市惠诚律师事务所 11353 | 代理人: | 刘子敬 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 线程 分配 方法 装置 | ||
1.一种线程分配方法,其特征在于,包括:
获取目标集群所依赖的依赖集群允许的最大每秒查询率;
在对待处理的目标请求分配线程时,获取所述目标集群与所述依赖集群之间的响应时间;
获取所述目标集群正在使用的当前线程数;
基于所述最大每秒查询率、所述响应时间以及所述当前线程数,获取目标集群的可分配线程数;
获取所述目标请求的所需线程数;
判断所述目标请求所需线程数是否小于等于所述可分配线程数;
如果所述所需线程数小于等于所述可分配线程数,则为所述目标请求分配相应的线程。
2.根据权利要求1所述的方法,其特征在于,基于所述最大每秒查询率、所述响应时间以及所述当前线程数,获取所述目标集群的可分配线程数的具体公式为:
N=(M-Qt*Ct)/Qt;
其中,N表示所述可分配线程数;M表示所述最大每秒查询率;Ct表示当前线程数;Qt表示单线程每秒查询率,Qt=1/RT,RT表示所述响应时间。
3.根据权利要求1所述的方法,其特征在于,所述获取所述目标集群与所述依赖集群之间的响应时间,包括:
获取预设时长内的历史响应时间;
基于所述历史响应时间获取所述响应时间。
4.根据权利要求1所述的方法,其特征在于,所述获取所述目标集群与所述依赖集群之间的响应时间,包括:
启动用于实时测量响应时间的专用线程;
通过所述专用线程实时测量,以获取所述响应时间。
5.根据权利要求3所述的方法,其特征在于,所述基于所述历史响应时间获取所述响应时间,包括:
剔除所述历史响应时间中的异常响应时间,以得到剩余的历史响应时间;
计算所述剩余的历史响应时间的算术平均值;
将所述算术平均值作为所述响应时间。
6.根据权利要求1所述的方法,其特征在于,所述获取所述目标请求的所需线程数,包括:
获取所述目标请求对应的拆解任务量;
判断所述拆解任务量是否超出预设的最大任务量;
如果判断结果为拆解任务量超出所述最大任务量,则将所述最大任务量作为所述目标请求的目标任务量;
根据预设的单个任务所需的线程数和所述目标任务量,计算所述目标请求的所需线程数。
7.根据权利要求6所述的方法,其特征在于,还包括:
如果判断结果为拆解任务量未超出所述最大任务量,则根据所述单个任务所需的线程数和所述拆解任务量,计算所述目标请求的所需线程数。
8.根据权利要求1所述的方法,其特征在于,所述如果所述所需线程数小于等于所述可分配线程数,则为所述目标请求分配相应的线程,包括:
在判断出所述所需线程数小于等于所述可分配线程数时,获取处理所述目标请求所需的处理时间;
将所述处理时间与预设的时间阈值进行比较;
如果所述处理时间小于所述时间阈值,则为所述目标请求分配相应的线程。
9.根据权利要求8所述的方法,其特征在于,还包括:
如果所述处理时间大于等于所述时间阈值,则将所述目标请求放置到等待队列中进行排队,等待下一次线程分配。
10.根据权利要求9所述的方法,其特征在于,还包括:
在所述目标请求排队等待下次线程分配时,当满足预设的优先级设置条件时,将所述目标请求的优先级设置为最高;
当所述可分配线程数大于等于所述所需线程数时,直接为所述目标请求分配对应的线程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610342244.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:分布式文件架构的任务处理方法和装置
- 下一篇:一种资源绑定方法和装置