什么是服务雪崩
这是在高并发的前提下,比如A、B只有100个线程,都在做这样一个操作,100个线程不能回收,当第101个客户来访问的时候直接报503。
服务雪崩的本质:线程没有及时回收。
不管是调用成功还是失败,只要线程可以及时回收,就可以解决服务雪崩。
服务雪崩怎么解决
1.修改调用的超时时长(不推荐)
- 将服务间的调用超时时长改小,这样就可以让线程及时回收,保证服务可用
- 优点:非常简单,也可以有效的解决服务雪崩
- 缺点:不够灵活,有的服务需要更长的时间去处理(写库,整理数据)
2.设置拦截器
Hystrix 简介
熔断器,也叫断路器!(正常情况下 断路器是关的 只有出了问题才打开)用来保护微服务不雪崩的方法。思想和我们上面画的拦截器一样。
Hystrix 是 Netflix 公司开源的一个项目,它提供了熔断器功能,能够阻止分布式系统中出现联动故障。
Hystrix 是通过隔离服务的访问点阻止联动故障的,并提供了故障的解决方案,从而提高了整个分布式系统的弹性。
微博 弹性云扩容 Docker K8s