分布式核心知识之熔断、降级

系统负载过高,突发流量或者网络等各种异常情况介绍,常用的解决方案
服务熔断机制

熔断机制是应对雪崩效应的一种微服务链路保户机制,当扇出链路的某个微服务不可用或者响应时间太长时,会进行服务的降级,进而熔断该节点微服务的调用,快速返回错误的相应信息。当检测当该节点微服务调用响应正常后恢复调用链路,熔断机制的注解是@HystrixCommand

服务熔断就是相当于我们电闸的保险丝,一旦发生服务雪崩的,就会熔断服务,通过维护一个自己的线程池,当线程达到阈值的时候就启动服务降级,如果其他请求继续访问就直接返回fallback的默认值

服务降级

降级一般是从整体负荷考虑,当某个服务熔断之后,服务器将不再被调用,客户端可自己准备一个本地的fallback回调,返回一个缺省值,虽然服务水平下降,但能用,比直接挂掉要强。虽然此操作是有损的,但有些服务不能降级,比如下单,可降级的功能,比如购物车

熔断和降级互相交集

相同点:
1.都是从可用性和可靠性出发的,防止系统崩溃
2.最终让用户体验的是某些功能不能用

不同点
1.服务熔断一般是下游服务故障导致的,而服务降级一般是从整体系统符合考虑的,由调用方控制

思路

熔断例子

下单服务-》商品服务
-》用户服务(出现异常-》熔断)如果没有熔断的话,一直调取用户服务,10次有9次失败,导致用户一直不能下单成功,此时对用户服务熔断,直接调取完商品服务返回,即使数据信息里不存用户信息,即使这样做是有损的,但为了不影响整体功能还是可以这样做的

降级例子

峰值期间,一个服务可能需要调其它不重要服务,为了保证返回服务数据速度,临时将一些服务降级不调取

旅行箱例子一:只带核心的物品,抛弃非核心的,等有条件的时候再去携带其它物品

双十一例子二:双十一12点进入商品页面,用户访问峰值过高,导致服务压力大,可以将一些非核心服务不去调取,比如商品相关推荐,评论也是可以断掉的,只保留很关键的数据,比如商品的具体信息,价格,相关信息等。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值