微服务调用失败的处理方法【转】

[微服务架构下的核心话题 (一)](https://blog.csdn.net/xcbeyond/article/details/97503091)
[微服务架构下的核心话题 (二)](https://xcbeyond.blog.csdn.net/article/details/98392304)
1.超时--设置超时时间
2.重试--设置调用超时后的重试次数
3.双发--在给定的小于超时时间的时间内如果没有返回请求结果,那么服务消费者就立刻发起另一次服务调用,结果以先返回的为准
4.熔断--Hystrix 的断路器也包含三种状态:关闭、打开、半打开。Hystrix 会把每一次服务调用都用 HystrixCommand 封装起来,它会实时记录每一次服务调用的状态,包括成功、失败、超时还是被线程拒绝。当一段时间内服务调用的失败率高于设定的阈值后,Hystrix 的断路器就会进入进入打开状态,新的服务调用就会直接返回,不会向服务提供者发起调用。再等待设定的时间间隔后,Hystrix 的断路器又会进入半打开状态,新的服务调用又可以重新发给服务提供者了;如果一段时间内服务调用的失败率依然高于设定的阈值的话,断路器会重新进入打开状态,否则的话,断路器会被重置为关闭状态。

posted @ 2021-07-08 14:13  up~up  阅读(814)  评论(0编辑  收藏  举报