[发明专利]一种基于滑动窗口的服务器过载保护方法及装置有效
申请号: | 201110412221.6 | 申请日: | 2011-12-12 |
公开(公告)号: | CN103164663A | 公开(公告)日: | 2013-06-19 |
发明(设计)人: | 姚明敏;娄继冰 | 申请(专利权)人: | 深圳市腾讯计算机系统有限公司 |
主分类号: | G06F21/71 | 分类号: | G06F21/71 |
代理公司: | 北京派特恩知识产权代理事务所(普通合伙) 11270 | 代理人: | 张颖玲;迟姗 |
地址: | 518057 广东省深圳市南*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 滑动 窗口 服务器 过载 保护 方法 装置 | ||
技术领域
本发明涉及多业务服务器的管理技术,尤其涉及一种基于滑动窗口的服务器过载保护方法及装置。
背景技术
目前,在服务器集群的负载均衡方面有很多技术研究,但是,在实际应用中,服务器总会在极端情况下达到负载上限。过载保护就是用于保证服务器在达到负载上限时仍然能够继续工作,维持服务器的吞吐量稳定,不将前端突发事件影响传递到服务器。
现有的服务器过载保护技术中,提出一种采用多个工作负载管理器来分别处理不同优先级别请求方法:当服务器负载达到一定上限时,拒绝低优先级的服务请求,只处理高优先级的请求。在实际的互联网应用中,除了系统运营维护所发出的控制请求,每个用户都是权利对等的,他们的请求都应该具有相同的优先级别。因此,上述方法并不能清晰正确的划分请求优先级,并不能起到过载保护的效果,反而会导致服务器吞吐量抖动。
还有一种服务器过载保护方法,该方法是从优化网卡驱动着手,是根据当前机器的CPU使用率、内存使用率等参数来衡量服务器的负载情况;如果服务器超过负载限制,则网卡驱动拒绝所有建立新TCP连接的请求,来缓解服务器压力。这种方法虽然能够在一定程度上缓解服务器负载,但是对于突发的短暂的高访问量情况,将会引起服务器的吞吐量抖动。同时,以机器为控制粒度,而不是服务,这将使得同一台机器上部署的不同服务会因为某一个服务异常而都不能正常工作。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于滑动窗口的服务器过载保护方法及装置,能够基于滑动窗口的过载控制较好的控制业务突发访问量对服务器的影响。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供一种基于滑动窗口的服务器过载保护方法,包括:
设置表示时间段的滑动窗口;
所述滑动窗口记录对应时间段内服务器接收的请求;
服务器收到新的请求时,根据滑动窗口记录的服务器接收的请求检测服务器当前的负载状态,根据检测结果判断是否对请求进行处理。
上述方法中,所述设置表示时间段的滑动窗口为:将时间虚拟为多个等长的窗口,每个窗口表示一个时间段;
所述滑动窗口记录对应时间段内服务器接收的请求为:所述窗口记录对应时间段内服务器所接收到的请求,并维护一个当前窗口范围,根据所述当前窗口范围进行单次的负载检测,且每次负载检测后,所述当前窗口范围根据上一次负载检测的时间点的变化进行滑动。
上述方法中,所述时间段的长度根据不同的业务需求进行动态配置,所述当前窗口范围根据互联网请求的延时进行设置。
上述方法中,该方法还包括:根据不同的业务特性为每个窗口配置记录的请求内容。
上述方法中,所述根据不同的业务特性为每个窗口配置记录的请求内容为:
对于磁盘带宽消耗型的服务,窗口记录当前时间段内磁盘I/O的次数;
对于CPU消耗型的服务,窗口记录当前时间段内累计消耗的时钟周期数;
对于网络带宽消耗型的服务,窗口记录当前时间段内的流量。
上述方法中,所述根据滑动窗口记录的服务器接收的请求检测服务器当前的负载状态为:
根据当前滑动窗口记录的服务器接收的请求,检测新的请求到来后服务器当前的负载状态;如果上一次检测负载状态的时间点与本次检测负载状态的时间点位于同一个窗口内,则将该窗口内的计数加1;如果上一次检测负载状态的时间点与本次检测负载状态的时间点不是位于同一个窗口内,将该窗口内的计数值清零;对计数值进行处理后,判断窗口内的计数值是否超过服务器处理请求的峰值。
上述方法中,所述根据检测结果判断是否对请求进行处理为:
如果窗口内的计数值超过服务器处理请求的峰值,拒绝新的请求,服务器不对该请求进行处理;如果窗口内的计数值没有超过服务器处理请求的峰值,服务器对该请求进行处理。
本发明还提供一种基于滑动窗口的服务器过载保护装置,包括:设置单元、滑动窗口单元、接收单元、处理单元;其中,
设置单元,用于表示时间段的滑动窗口;
滑动窗口单元,用于记录对应时间段内服务器接收的请求;
接收单元,用于收到新的请求时,根据滑动窗口记录的服务器接收的请求检测服务器当前的负载状态;
处理单元,用于根据检测结果判断是否对请求进行处理。
上述装置中,所述设置单元还用于,根据不同的业务需求动态配置时间段的长度,根据互联网请求的延时设置当前窗口范围。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市腾讯计算机系统有限公司,未经深圳市腾讯计算机系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110412221.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:超声诊断装置的探测器
- 下一篇:一种液晶显示器前框的制作方法