微服务架构 — 服务治理 — 服务限流、服务降级、服务熔断

举报
云物互联 发表于 2021/08/05 22:50:49 2021/08/05
【摘要】 目录 文章目录 目录 服务限流 服务降级 服务熔断 服务限流 C ⇄ S 的异常问题:C 的请求太多,超出 S 的服务能力,导致 S 不可用。例如:DoS 攻击,企图耗尽被攻击对象的资源,让目标系统无法响应直至崩溃。因此,S 需要能够进行自我保护,例如:S 对 C 限流,保护 S 的服务资源。 限流通常在网关或网络层面...

目录

服务限流

C ⇄ S 的异常问题:C 的请求太多,超出 S 的服务能力,导致 S 不可用。例如:DoS 攻击,企图耗尽被攻击对象的资源,让目标系统无法响应直至崩溃。因此,S 需要能够进行自我保护,例如:S 对 C 限流,保护 S 的服务资源。

限流通常在网关或网络层面实施。对各类请求设置最高的 QPS 阈值,当请求高于阈值时直接阻断。常用的限流算法有滑动计数,漏斗限流和令牌桶限流三种。

  • 滑动计数限流:按时间片(比如 1 秒)定义滑动窗口,计数器记录当前窗口的请求次数,达到阈值就限流,窗口滑动后计数器归零。可采用循环队列数据结构实现。
  • 漏斗限流:维护一个队列,所有请求进队列,按 FIFO 服务,队满溢出则丢弃请求。
  • 令牌桶限流:按固定速率往桶中存入令牌,服务前先从桶中取令牌,取到令牌才服务。

限流策略有很多,最简单的比如当单位时间内请求数过多时,丢弃多余的请求。另外,也可以考虑分区限流。仅拒绝来自产生大量请求的服务的请求。例如:商品服务和订单服务都需

文章来源: is-cloud.blog.csdn.net,作者:范桂飓,版权归原作者所有,如需转载,请联系作者。

原文链接:is-cloud.blog.csdn.net/article/details/112604647

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。