雪崩问题
微服务调用链路中的某个服务故障,引起整个链路中的所有微服务都不可用,这就是雪崩。
雪崩问题解决方案
解决雪崩问题的常见方式有四种:
a.超时处理:设定超时时间,请求超过一定时间没有响应就返回错误信息,不会无休止等待。
b.线程隔离:限定每个业务能使用的线程数,避免耗尽整个tomcat的资源,会有一定的资源浪费。
c.熔断降级:由断路器统计业务执行的异常比例,如果超出阈值则会熔断该业务,拦截访问该业务的一切请求。
d.流量控制:限制业务访问的QPS,避免服务因流量的突增而故障。
总结
什么是雪崩问题?
微服务之间相互调用,因为调用链中的一个服务故障,引起整个链路都无法访问的情况。
如何避免因瞬间高并发流量而导致服务故障?
流量控制
如何避免因服务故障引起的雪崩问题?
超时处理
线程隔离
降级熔断