淘宝双十一2017满减最高值是25万笔/秒的支付数量,导致阿里云出现短暂的宕机,我想问问日常阿里云的交易数有多少

淘宝双十一2017满减就要来了!在淘寶双十一2017满减这样的大流量场景中抢购、下单量会非常大,如果业务应用系统的负载能力有限非预期的请求,就会给系统带来很大压仂从而拖垮业务应用系统。

那么在面对大流量时,该如何进行流量控制

服务接口的流量控制策略:分流、降级、限流等。本文讨论丅限流策略虽然降低了服务接口的访问频率和并发量,却换取服务接口和业务应用系统的高可用

常用的限流算法有漏桶算法、令牌桶算法。

漏桶(Leaky Bucket)算法思路很简单水(请求)先进入到漏桶里,漏桶以一定的速度出水(接口有响应速率)当水流入速度过大会直接溢出(訪问频率超过接口响应速率),然后就拒绝请求可以看出漏桶算法能强行限制数据的传输速率。示意图如下:

可见这里有两个变量一個是桶的大小,支持流量突发增多时可以存多少的水(burst)另一个是水桶漏洞的大小(rate)。

因为漏桶的漏出速率是固定的参数所以,即使网络中不存在资源冲突(没有发生拥塞)漏桶算法也不能使流突发(burst)到端口速率。因此漏桶算法对于存在突发特性的流量来说缺乏效率。

令牌桶算法(Token Bucket)和 Leaky Bucket 效果一样但方向相反的算法更加容易理解。

随着时间流逝系统会按恒定1/QPS时间间隔(如果QPS=100,则间隔是10ms)往桶裏加入Token(想象和漏洞漏水相反有个水龙头在不断的加水),如果桶已经满了就不再加了新请求来临时,会各自拿走一个Token如果没有Token可拿了就阻塞或者拒绝服务。

令牌桶的另外一个好处是可以方便的改变速度一旦需要提高速率,则按需提高放入桶中的令牌的速率一般會定时(比如100毫秒)往桶中增加一定数量的令牌, 有些变种算法则实时的计算应该增加的令牌的数量

RateLimiter是Guava提供的基于令牌桶算法的实现类,API使用简单并且根据系统的实际情况来调整生成Token的速率。



}

我要回帖

更多关于 淘宝618和双11哪个便宜 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信