[发明专利]一种资源管理器的资源调度方法有效
申请号: | 201410254167.0 | 申请日: | 2014-06-09 |
公开(公告)号: | CN104063283B | 公开(公告)日: | 2017-06-16 |
发明(设计)人: | 管延军;蒋红宇;蔡龙 | 申请(专利权)人: | 北京海泰方圆科技股份有限公司 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 北京华夏正合知识产权代理事务所(普通合伙)11017 | 代理人: | 韩登营,张焕亮 |
地址: | 100094 北京市海淀区东北旺西路*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 资源管理器 资源 调度 方法 | ||
技术领域
本发明涉及一种资源管理器的资源调度方法。
背景技术
在现有技术中,资源管理器从固定了边界值的资源池中通过未加锁资源队列或者创建资源的方式获取资源。当资源请求过多时,资源管理器通过线程阻塞或者请求排队的方式等待空闲资源。
上述现有技术存在以下问题:
1.由于设定了固定边界值的资源池,这样,在被监控的闲置资源闲置一定时间后,会被移出资源池。此时,当对资源的请求超过空闲资源时,需要再次创建资源,由此耗费更多的时间。
2.使用了线程阻塞或请求排队的方式,等待时间不可预见。当出现资源被长时间占用的情况下,会导致任何请求都得不到相应反馈的情况,即系统无响应。
3.当对资源的请求出现高峰时,会由于资源池边界大小、边界生存时间、边界超时时间等设定,造成设备利用效率不高,性能无法全部发挥出来。
4.对于设定了缓存资源池的资源管理器的资源获取方法而言,能够根据当前对资源请求的多少动态设定资源池的各临界值,用以提高设备利用效率,提高性能。但由此建立的缓存对象依然处于当前资源池内,且依赖于当前资源池的限制,使用起来灵活性较差。
发明内容
有鉴于此,本发明的主要目的在于提供一种资源管理器的资源调度方法,以解决上述问题。
本发明提供的一种资源管理器的资源调度方法,包括以下步骤:
A、访问资源池,请求获取资源:如果资源池中未加锁的资源集合中存在资源,则直接获取资源;否则,进入下一步骤;
B、访问缓存资源池,请求获取资源:如果缓存资源池的未加锁资源集合中存在资源,则直接获取资源;否则,进入下一步骤;
C、判断资源池中的资源数量是否小于资源池的设定容量:如果小于,则创建并获取新资源;否则,将当前获取资源的请求加入请求缓冲队列;
D、判断请求缓冲队列是否达到最大容量;如果达到最大容量,则拒绝该请求,即中断本次资源获取;否则,进入下一步骤;
E、通过所述请求缓冲队列访问缓存资源池,请求获取资源:如果缓存资源池的未加锁资源集合中存在资源,则直接获取资源;否则,进入下一步骤;
F、判断缓存资源池中的资源数量是否小于缓存资源池的设定容量:如果小于,则创建并获取新资源;否则,根据所述请求缓冲队列的大小,对应增减缓存资源池的设定容量,然后返回上述步骤E。
在上述的方法中,步骤F后还包括以下步骤:
G、验证使用过的资源的有效性,将有效的资源放回到所述资源池,销毁掉无效的资源。
在上述的方法中,访问所述资源池、所述缓存资源池时,从中扫描出空闲时间超过设定存活时间最大值的资源,将这些资源从所述资源池、所述缓存资源池中移出并销毁。
由上可以看出,当无法从资源池直接获取资源时:
1.本发明方法首先考虑访问诸如二级缓存资源池这样的缓存资源池,而不是选择阻塞或加入排队,由此可避免阻塞引起的系统无响应问题。
2.请求缓冲队列不与固定边界的资源池进行任意直接交互,而仅与边界值可以动态调整的缓存资源池进行交互。这样,不会像资源池那样受固定边界的限制而需要经常移出闲置资源,而在请求缓冲队列提出请求时经常重新创建资源,由此缩短了资源获取时间。
3.在每次访问请求缓冲队列时,都要扫描请求缓冲队列的容量大小,以根据请求缓冲队列的实时容量动态调整缓存资源池容量以及缓存资源池中资源存活时间最大值。也就是说,根据资源请求的增减,相应地增/减缓存资源池容量或相应地减/增缓存资源池中资源存活时间最大值,以进一步降低对设备资源的占用和消耗。
附图说明
图1为本发明提供的资源管理器的资源调度方法的流程图。
具体实施方式
首先,交代一下本发明方法实施过程的伪代码(Pseudocode),其中的各参数说明如下:
POOL:资源池;
UNLOCKED:资源池中未加锁的资源集合;
LOCKED:资源池中加锁的资源集合;
POOL_MAX:资源池的设定容量(相当于UNLOCKED+LOCKED);
POOL_CACHE:缓存资源池;
UNLOCKED_CACHE:缓存资源池中未加锁的资源集合;
LOCKED_CACHE:缓存资源池中加锁的资源集合;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京海泰方圆科技股份有限公司,未经北京海泰方圆科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410254167.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据备份方法及流计算系统
- 下一篇:用于具有事务能力的排队的方法及系统