码迷,mamicode.com
首页 > 其他好文 > 详细

8-3 Hystrix架构图介绍

时间:2020-04-30 21:32:22      阅读:81      评论:0      收藏:0      [点我收藏+]

标签:处理   依赖   back   实现   自己   异步执行   形式   图片   ble   

Hytrix官方的
技术图片
第一部分是这里。熔断依赖命令来实现的
可以认为是线程的入口,所有需要Hytrix支持的内容 都必须要走 HystrixCommand、HystrixObservableCommand:只有这两种形式,没有其他可选的形式。除非你们继承它实现了自己的子类
技术图片

第二部分

都是入口,这四个的差异就是同步执行,还是异步执行。
技术图片

第三步


技术图片
不用处理后面逻辑了 这里有缓存,直接返回
技术图片

第四步熔断

其实是个状态判断,Hytrix自身有个开关,可以认为是一把锁,如果说Hytrix这把锁打开,意思就是说我已经不让你进了。锁关闭就是允许你进。
你可以为是拧把手的锁。打开的意思就是锁弹开了。
技术图片
熔断器打开,就是这里的yes,那你就不要继续往下走了。
技术图片
熔断了去调用getFailBack或者resumeWithFallback方法。
技术图片
调用getFailBack或者resumeWithFallback方法。,这个方法调用,如果工程了那么就返回,如果失败了就报错。
技术图片
getFailBack就是之前说的快速失败,就是降级。降级业务其实是我们自己写的。熔断开启后,会直接调用我们预定义的getFailBack方法,这个getFailBack方法里面的内容就是即将要返回的内容。

熔断如果没有开启就调下面的方法。Hytrix给我们提供了熔断和信号量,无论是信号量还是线程池都是有上限的。
技术图片
如果说这两部分都出上限了。那么一样会去调用getFailBack
技术图片 
这两部都没有问题就到了第六步,真正执行我们的run方法。前面都是一些验证验证完成之后才真正执行command里的业务方法。

技术图片

验证方法如果调用失败,就会调用getFailBack方法。如果超时也会调用getFailBack方法
技术图片
如果都没有问题,第九步就返回了。
技术图片

总结

hystrix大致分为这几个东西。
技术图片

基于没有和我们业务有关的东西。所以2到7都算是业务验证。
技术图片
主要学的东西就是这些。
技术图片

结束

 

8-3 Hystrix架构图介绍

标签:处理   依赖   back   实现   自己   异步执行   形式   图片   ble   

原文地址:https://www.cnblogs.com/wangjunwei/p/12810953.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!