降级 限流 熔断 简单理解
所属分类 architecture
浏览量 1011
超时 timeout
重试 retry
幂等 idempotent
熔断 circuit break
限流 current limiting
server端 降级和限流
client端 熔断
访问量突然剧增 譬如 秒杀
第三方接口 变慢 或 直接挂了
降级一般指自身的系统出现了故障而降级
熔断一般指依赖的外部服务出现故障而采取的保护措施
熔断也算是一种降级
常用的限流算法 滑动计数,漏斗和令牌桶
滑动计数
按时间片(比如1秒)定义滑动窗口,计数器记录当前窗口的请求次数,达到阈值就限流,窗口滑动后计数器清零
漏斗限流
维护一个队列,所有请求进队列,按FIFO服务,队满溢出则丢弃请求
令牌桶限流
按固定速率往桶中存入令牌,服务前先从桶中取令牌,取到令牌才服务
降级
资源限制,主动关闭某些功能 ,保证核心功能的可用性
熔断设计两个关键点
判断何时熔断
何时从熔断状态恢复
判断何时熔断
C对每次请求S的正常、异常(失败、拒绝、超时)返回计数,当异常返回次数超过设定阈值时进行熔断
何时从熔断状态恢复
处于熔断状态时,C每隔一段时间(比如5秒),允许部分请求通过,若这部分请求正常返回,则恢复
Hystrix
隔离策略: 线程 vs 信号量
分布式限流方案
上一篇
下一篇
Springboot注入ApplicationContext的几种方式
zookeeper四字命令conf结果说明
Zookeeper四字命令
kafka在zookeeper中的元数据
Kafka配置参数
kafka集群搭建