spring-cloud:漫谈雪崩
如何解决雪崩:
1.降级:超时降级、资源不足时(线程或信号量)降级,降级后可以配合降级接口返回托底数据。实现一个fallback方法, 当请求后端服务出现异常的时候, 可以使用fallback方法返回的值.
2.隔离(线程池隔离和信号量隔离):限制调用分布式服务的资源使用,某一个调用的服务出现问题不会影响其他服务调用。
3.融断:当失败率(如因网络故障/超时造成的失败率高)达到阀值自动触发降级,熔断器触发的快速失败会进行快速恢复。
4.缓存:提供了请求缓存。
5.请求合并:提供请求合并。
线程池隔离:
同一个springboot里面的两个接口做隔离
信号量隔离:相当于大量的单身男去争夺少量的美女吧~
熔断:
请求合并: