项目-高并发系统三大利器

保护高并发系统的三大利器:缓存、降级、限流。

  • 缓存:提升系统的访问速度,增大系统处理容量;
  • 降级:当服务出现问题或影响到核心流程时,需要暂时屏蔽掉,待高峰过后或问题解决后再打开;
  • 限流:当不可降级场景出现时,需要采用限流限制该场景的并发请求,有损服务而不是不服务


本文主要针对限流描述如下:

限流目的:

       通过对并发访问/请求进行限速或者一个时间窗口内的的请求进行限速来保护系统,一旦达到限制速率则可以拒绝服务、排队或等待、降级。

超过阈值时策略:

  • 定向到错误页或告知没有资源
  • 返回兜底数据或默认数据,如商品详情页库存默认有货

常见限流场景:

  • 线程池
  • 数据库连接池
  • 并发请求数
  • 接口调用速率
  • MQ的消费速率


常见限流算法:

  • 令牌桶:一个存放固定容量令牌的桶,按照固定速率往桶里添加令牌,请求获取令牌,令牌不足时拒绝请求。
  • 漏桶:流入速率过快,超过桶的容量,拒绝请求。
  • 计数器(简单粗暴)

注意事项:

  • 限流需要评估好,不可乱用,否则会正常流量出现一些奇怪的问题而导致用户抱怨
  • 在实际应用时也不要太纠结算法问题不要一味去找最佳模式,白猫黑猫能解决问题的就是好猫






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值