spring-cloud-hystrix执行过程

世界上并没有完美的程序,但是我们并不因此而沮丧,因为写程序就是一个不断追求完美的过程。

在使用了hystrix以后,当一个请求过来,hystrix是如何反应的呢?
首先hystrix会判断缓存中有没有对应的返回数据,如果有,直接返回
如果缓存中没有,则判断断路器是否开启,如果开启则调用fallback返回
如果没有开启,会进入到信号量/线程池资源的评估,通过report metrics判断是否开启断路器,如果开启则调用fallback返回,
如果不开启,则进入run方法,即自己实现的事务处理逻辑。run方法如果执行成功,返回run执行结果,并创建缓存
如果run方法超时或执行失败,调用fallback返回
spring-cloud-hystrix执行过程_第1张图片

你可能感兴趣的:(spring,cloud,spring,cloud)