一种资源调度的方法和系统技术方案

技术编号:14708061 阅读:100 留言:0更新日期:2017-02-25 23:41
本发明专利技术提供了一种资源调度的方法和系统,其中方法包括:监控待服务器处理的应用请求的阻塞状况;依据预设的调度规则和所述应用请求的阻塞状况,对所述应用进行服务器的计算资源调度。由于待服务器处理的应用请求的阻塞状况能够更真实地反映应用的负载状况,因此本发明专利技术的调度方式能够更加准确地满足实际的调度需求。

【技术实现步骤摘要】

本专利技术涉及计算机应用
,特别涉及一种资源调度的方法和系统
技术介绍
在应用系统运营过程中,常常会碰到这样的问题:偶然会碰到访问量过高的情况,为了保证应用系统能够正常运行,系统建设时期会以最高要求来组件服务器,但这种情况在访问量低时,会出现大量的资源空闲的情况。如果在系统建设时期对访问量预计不足,则在出现高并发请求时,会造成应用系统运行缓慢或挂机等情况。因此,针对上述问题目前已经提出了弹性调度机制,即在访问量高时自动创建计算资源以扩展系统处理能力,在访问量低的空闲时能够自动缩减计算资源以节约成本。目前采用的弹性调度机制主要是依据对系统资源的使用情况来判断应用的负载情况,例如依据对CPU、内存、网络流量、磁盘IO等资源的使用情况来确定应用的负载情况,如果某应用对CPU、内存等占用较多,则确定需要针对该应用进行扩容。然而,这种方式在有些情况下并不能真实反映应用状态,例如有些应用对系统资源的占用并不多,但针对该应用的处理却十分缓慢甚至停滞,如果使用目前的弹性调度机制则无法满足该应用的扩容需求。
技术实现思路
有鉴于此,本专利技术提供了一种资源调度的方法和系统,以便于更加准确地满足实际的调度需求。具体技术方案如下:本专利技术提供了一种资源调度的方法,该方法包括:监控待服务器处理的应用请求的阻塞状况;依据预设的调度规则和所述应用请求的阻塞状况,对所述应用进行服务器的计算资源调度。根据本专利技术一优选实施方式,所述监控待服务器处理的应用请求的阻塞状况包括:收集服务器的阻塞请求队列的请求数,所述阻塞请求队列包含待服务器处理的应用请求;对收集的所述请求数进行分析和统计,得到所述应用请求的阻塞状况。根据本专利技术一优选实施方式,所述应用请求的阻塞状况包括:针对具体应用的请求阻塞状况、针对具体实例的请求阻塞状况以及针对具体主机的请求阻塞状况中的至少一种。根据本专利技术一优选实施方式,所述收集服务器的阻塞请求队列的请求数包括:从代理服务器暴露的API收集服务器的阻塞请求队列的请求数。根据本专利技术一优选实施方式,该方法还包括:所述代理服务器中设置有事件监听统计模块;所述事件监听统计模块监听所述代理服务器上报请求给所述服务器的事件,获取已上报请求数量;以及监听所述代理服务器确定所述服务器完成对请求的处理事件,获取已处理请求数量;依据所述已上报请求数量和所述已处理请求数量,确定所述服务器的阻塞请求队列的请求数。根据本专利技术一优选实施方式,所述从代理服务器暴露的API收集服务器的阻塞请求队列的请求数包括:访问所述API提供的URL;从所述URL对应的页面数据获取所述服务器的阻塞请求队列的请求数。根据本专利技术一优选实施方式,依据预设的调度规则和所述应用请求的阻塞状况,对所述应用进行服务器的计算资源调度包括以下至少一种:如果针对具体应用的请求阻塞状况满足第一扩容条件,则针对所述具体应用产生并部署新的实例;如果针对具体应用的请求阻塞状况满足第一缩容条件,则减少所述具体应用的实例;如果针对具体实例的请求阻塞状况满足第二扩容条件,则针对所述具体实例增加系统资源或者利用其它实例对所述具体实例进行负载分担;如果针对具体实例的请求阻塞状况满足第二缩容条件,则针对所述具体实例减少系统资源;如果针对具体主机的请求阻塞状况满足第三扩容条件,则利用其它主机对所述具体主机进行负载分担;如果针对具体主机的请求阻塞状况满足第三缩容条件,则优先在所述具体主机上部署实例,或者优先利用所述具体主机对其他主机进行负载分担。根据本专利技术一优选实施方式,该方法还包括以下至少一种:监控具体应用中实例的资源使用状况,如果具体应用中实例的平均资源使用状况大于或等于预设的第一上限值,则增加所述具体应用的实例;如果具体应用中实例的平均资源使用状况小于或等于预设的第一下限值,则减少所述具体应用的实例;监控具体应用中实例的资源使用状况,如果某实例的资源使用状况大于或等于预设的第二上限值,则增加所述某实例所占用的系统资源;如果某实例的资源使用状况小于或等于预设的第二下限值,则减少所述某实例所占用的系统资源;如果检测到某主机不可用,则针对所述某主机上的实例发起迁移;如果检测到某进程不可用,则针对所述某进程执行重启,如果重启失败,则针对所述某进程上的实例发起迁移;如果检测到某应用异常,则对所述某应用执行重启,或者针对所述某应用的实例发起迁移,或者进行报警。本专利技术还提供了一种资源调度的系统,该系统包括:阻塞监控单元,用于监控待服务器处理的应用请求的阻塞状况;调度单元,用于依据预设的调度规则和所述应用请求的阻塞状况,对所述应用进行服务器的计算资源调度。根据本专利技术一优选实施方式,所述阻塞监控单元具体包括:监控子单元,用于收集服务器的阻塞请求队列的请求数,所述阻塞请求队列包含待服务器处理的应用请求;计算子单元,用于对所述监控子单元收集的所述请求数进行分析和统计,得到所述应用请求的阻塞状况。根据本专利技术一优选实施方式,所述应用请求的阻塞状况包括:针对具体应用的请求阻塞状况、针对具体实例的请求阻塞状况以及针对具体主机的请求阻塞状况中的至少一种。根据本专利技术一优选实施方式,所述监控子单元从代理服务器暴露的API收集服务器的阻塞请求队列的请求数。根据本专利技术一优选实施方式,该系统还包括:设置于所述代理服务器的事件监听统计模块,用于监听所述代理服务器上报请求给所述服务器的事件,获取已上报请求数量;以及监听所述代理服务器确定所述服务器完成对请求的处理事件,获取已处理请求数量;依据所述已上报请求数量和所述已处理请求数量,确定所述服务器的阻塞请求队列的请求数。根据本专利技术一优选实施方式,所述监控子单元,具体用于访问所述API提供的URL,从所述URL对应的页面数据获取所述服务器的阻塞请求队列的请求数。根据本专利技术一优选实施方式,所述调度单元,具体执行以下调度中的至少一种:如果针对具体应用的请求阻塞状况满足第一扩容条件,则针对所述具体应用产生并部署新的实例;如果针对具体应用的请求阻塞状况满足第一缩容条件,则减少所述具体应用的实例;如果针对具体实例的请求阻塞状况满足第二扩容条件,则针对所述具体实例增加系统资源或者利用其它实例对所述具体实例进行负载分担;如果针对具体实例的请求阻塞状况满足第二缩容条件,则针对所述具体实例减少系统资源;如果针对具体主机的请求阻塞状况满足第三扩容条件,则利用其它主机对所述具体主机进行负载分担;如果针对具体主机的请求阻塞状况满足第三缩容条件,则优先在所述具体主机上部署实例,或者优先利用所述具体主机对其他主机进行负载分担。根据本专利技术一优选实施方式,所述阻塞监控单元,还用于监控具体应用中实例的资源使用状况;所述调度单元,还用于如果具体应用中实例的平均资源使用状况大于或等于预设的第一上限值,则增加所述具体应用的实例;如果具体应用中实例的平均资源使用状况小于或等于预设的第一下限值,则减少所述具体应用的实例;或者,如果某实例的资源使用状况大于或等于预设的第二上限值,则增加所述某实例所占用的系统资源;如果某实例的资源使用状况小于或等于预设的第二下限值,则减少所述某实例所占用的系统资源。根据本专利技术一优选实施方式,该系统还包括:状态检测单元,用于检测主机、进程或应用的运行状态;所述调度单元,还用于如果所述状态检测单元检本文档来自技高网...
一种资源调度的方法和系统

【技术保护点】
一种资源调度的方法,其特征在于,该方法包括:监控待服务器处理的应用请求的阻塞状况;依据预设的调度规则和所述应用请求的阻塞状况,对所述应用进行服务器的计算资源调度。

【技术特征摘要】
1.一种资源调度的方法,其特征在于,该方法包括:监控待服务器处理的应用请求的阻塞状况;依据预设的调度规则和所述应用请求的阻塞状况,对所述应用进行服务器的计算资源调度。2.根据权利要求1所述的方法,其特征在于,所述监控待服务器处理的应用请求的阻塞状况包括:收集服务器的阻塞请求队列的请求数,所述阻塞请求队列包含待服务器处理的应用请求;对收集的所述请求数进行分析和统计,得到所述应用请求的阻塞状况。3.根据所述权利要求1或2所述的方法,其特征在于,所述应用请求的阻塞状况包括:针对具体应用的请求阻塞状况、针对具体实例的请求阻塞状况以及针对具体主机的请求阻塞状况中的至少一种。4.根据权利要求2所述的方法,其特征在于,所述收集服务器的阻塞请求队列的请求数包括:从代理服务器暴露的API收集服务器的阻塞请求队列的请求数。5.根据权利要求4所述的方法,其特征在于,该方法还包括:所述代理服务器中设置有事件监听统计模块;所述事件监听统计模块监听所述代理服务器上报请求给所述服务器的事件,获取已上报请求数量;以及监听所述代理服务器确定所述服务器完成对请求的处理事件,获取已处理请求数量;依据所述已上报请求数量和所述已处理请求数量,确定所述服务器的阻塞请求队列的请求数。6.根据权利要求4或5所述的方法,其特征在于,所述从代理服务器暴露的API收集服务器的阻塞请求队列的请求数包括:访问所述API提供的URL;从所述URL对应的页面数据获取所述服务器的阻塞请求队列的请求数。7.根据权利要求3所述的方法,其特征在于,依据预设的调度规则和所述应用请求的阻塞状况,对所述应用进行服务器的计算资源调度包括以下至少一种:如果针对具体应用的请求阻塞状况满足第一扩容条件,则针对所述具体应用产生并部署新的实例;如果针对具体应用的请求阻塞状况满足第一缩容条件,则减少所述具体应用的实例;如果针对具体实例的请求阻塞状况满足第二扩容条件,则针对所述具体实例增加系统资源或者利用其它实例对所述具体实例进行负载分担;如果针对具体实例的请求阻塞状况满足第二缩容条件,则针对所述具体实例减少系统资源;如果针对具体主机的请求阻塞状况满足第三扩容条件,则利用其它主机对所述具体主机进行负载分担;如果针对具体主机的请求阻塞状况满足第三缩容条件,则优先在所述具体主机上部署实例,或者优先利用所述具体主机对其他主机进行负载分担。8.根据权利要求1、2、4、5或7所述的方法,其特征在于,该方法还包括以下至少一种:监控具体应用中实例的资源使用状况,如果具体应用中实例的平均资源使用状况大于或等于预设的第一上限值,则增加所述具体应用的实例;如果具体应用中实例的平均资源使用状况小于或等于预设的第一下限值,则减少所述具体应用的实例;监控具体应用中实例的资源使用状况,如果某实例的资源使用状况大于或等于预设的第二上限值,则增加所述某实例所占用的系统资源;如果某实例的资源使用状况小于或等于预设的第二下限值,则减少所述某实例所占用的系统资源;如果检测到某主机不可用,则针对所述某主机上的实例发起迁移;如果检测到某进程不可用,则针对所述某进程执行重启,如果重启失败,则针对所述某进程上的实例发起迁移;如果检测到某应用异常,则对所述某应用执行重启,或者针对所述某应用的实例发起迁移,或者进行报警。9.一种资源调度的系统,其特征在于,该系统包括:阻塞监控单元,用于监控待服务器处理的应用请求的阻塞状况;调度单元,用于依据预设的调度规则和所述应用请求的阻塞状况,对所述应用进行服务器的计算资源调度。10.根据...

【专利技术属性】
技术研发人员:潘磊杨林茆亮亮
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛;KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1