背景 分布式系统环境下,服务间类似依赖非常常见,一个业务调用通常依赖多个基础服务.如下图,对于同步调用,当库存服务不可用时,商品服务请求线程被阻塞,当有大批量请求调用库存服务时,最终可能导致整个商品服务资源耗尽,无法继续对外提供服务.并且这种不可用可能沿请求调用链向上传递,这种现象被称为雪崩效应. 雪崩效应应对策略 针对造成雪崩效应的不同场景,可以使用不同的应对策略,没有一种通用所有场景的策略,参考如下: 硬件故障:多机房容灾.异地多活等. 流量激增:服务自动扩容.流量控制(限流.关闭重试)等.…