题目剖析

生活中的遇到哪些突发流量?

  • 双11、618大促

  • 电商秒杀活动

  • 微博突发新闻

  • ……

什么是限流?

  • 通常我们说的限流指的是限制达到系统的并发请求数 ,使得系统能够正常的处理部分请求,来保证系统的稳定性。

  • 限流也称为流控(流量控制)。

为什么要限流?

内部原因

  • 服务的处理能力有限,拦截掉处理能力之外的请求

  • 均衡客户端对服务端资源的调用,防止一些请求无效

外部原因

  • 突发情况

  • 非正常的爬虫

其他原因

  • 业务范畴(支付一定费用,提高请求量)

如何实现限流算法?

固定窗口限流

限制在指定时间间隔内的访问量,时间窗口一过,计数器会重置。

规则:

  • 单位时间内,请求次数小于阈值,允许访问且计数器+1

  • 请求次数大于阈值,拒绝访问

  • 时间窗口一过,计数器清零

图片