服务容错

关于分布式系统服务容错

1.服务容错的产生背景

随着分布式系统的应用越来越广泛,各个服务器之间建立了复杂的联系,一旦一个服务出现故障,会导致其他服务,甚至整个系统瘫痪。引发著名的:雪崩效应。

2.什么是雪崩效应?

在这里插入图片描述
简单理解为:一处服务器的小故障,引起系统的雪崩式坍塌。

造成雪崩原因可以归结为以下三个:
1,服务提供者不可用(硬件故障,程序bug,缓存击穿,用户大量请求)
2,重试加大流量(用户重试,代码逻辑重试)
3,服务调用者不可用(同步等待造成的资源耗尽)

3.如何防止系统雪崩?

要防止雪崩的扩散,我们就要做好服务的容错:保证系统整体不会被某个服务器的故障影响。

常见的容错方案:超时、限流、仓壁,熔断、降级。

1)超时:最简单的容错方式,在调用方为服务调用设置一个超时时间,避免无限制的等待下游系统造成的线程堆积。

2)限流:在提供方一端限制进入的流量,保证服务不会因为超负荷流量而崩溃。

3)仓壁模式:资源隔离手段。在调用方进行资源隔离,比如使用线程池,保证消耗的资源有上限,避免无限量调用资源占用其他请求的资源。

4)熔断器:在调用方进行控制,根据策略定义失败情况,失败数字达到阈值时打开熔断器,不再调用底层服务,熔断窗口(一段时间过后)达到时,释放一个请求进入底层,如果请求执行成功则关闭熔断器,正常调用,如果请求失败则继续保持熔断器打开直到下一个熔断窗口达到。

5)降级:可配合熔断器使用,调用者在遇到提供者熔断时,会降级处理调用另一个备用服务,保证系统不阻塞。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值