Spring Cloud Hystrix 熔断、降级、限流的区别

本文以通俗易懂的方式解释了微服务架构中降级、限流和熔断的概念。降级是服务响应失败时,先存储消息或提供备用方案;限流是限制流量以保护系统稳定,避免资源耗尽;熔断是在多次降级后,直接切断服务调用。实现手段可以类比trycatch,通过策略决定是降级、限流还是熔断。降级和熔断常见于消费端,限流常发生在服务端。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前对三者的概念模模糊糊,这篇文章用通俗的语言来加深一下印象。

降级:针对降级的处理,可以给出友好的提示,或重定向至页面。可以简单理解为:降低服务质量的等级,原本的计划是要将数据写到数据库内,但是服务响应失败,可以通过降级,先把消息存到mq里面,或给出页面,点击重试按钮。

限流:针对限流的处理,可以直接抛出异常,让用户再次请求重试。可以简单理解为:限制某一服务的流量,假如火锅店只有20桌,并且座位上都有人,那其他的用户只能在外边等着,如果不对用户进行处理,都进入到火锅店,也会影响其他用户的服务质量。

熔断:降级次数达到阈值之后,将开关关闭,直接抛出异常。

如何实现呢?

通俗一点讲就是try catch,没有异常就正常返回,有异常就处理,具体是熔断、降级还是限流,看具体的实现策略

使用场景

降级和熔断多发生于消费端(吃火锅举例子:服务员告诉你人满了,要不你搬个小马扎去外边等着,要不就是人太多了,你回家了,不吃了,并且今天不来了)

限流多发生于服务端(还是吃火锅举例子:肯定是服务员让你等着,因为座位不够了嘛)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值