摘要: 原创出处 http://www.iocoder.cn/Hystrix/build-debugging-environment/ 「芋道源码」欢迎转载,保留摘要,谢谢!
关注 微信公众号:【芋道源码】 有福利:
从官方仓库 https://github.com/Netflix/Hystrix.git Fork
出属于自己的仓库。为什么要 Fork
?既然开始阅读、调试源码,我们可能会写一些注释,有了自己的仓库,可以进行自由的提交。:smiling_imp:
使用 IntelliJ IDEA
从 Fork
出来的仓库拉取代码。在项目路径下,在 命令行 执行 ./gradlew
命令, Gradle
会下载依赖包,可能会花费一些时间,耐心等待下。其间可能会出现因为网络原因( 我相信你懂的 ),可能会出现失败的情况,淡定,重新执行上述命令直到成功。此刻,你就是一个 while(true)
的小强。
本文基于 master
分支。
在 hystrix-examples
子项目下,提供了 大量 的示例,如下图:
basic
包 :针对 Hystrix 每个特性提供小的单元测试示例。你可以从 CommandHelloWorld 开始尝试。 demo
包 :结合实际场景的实战小例子。运行入口为 HystrixCommandDemo 或者 HystrixCommandAsyncDemo 。恩,聪慧如你,从名字能看出它们的区别点。 可能有部分同学对 Hystrix 的特性了解的不是很清晰,笔者推荐如下文章:
另外,笔者也整理了下 Hystrix 的特性如下( 可能不是很严谨,主要辅助理解 ) :
为了显得本文的诚意( 真的不是水更 ),友情提示如下:
Hystrix 基于 RxJava 实现,所以笔者推荐阅读如下文章 :
可能一开始理解会比较困难,保持耐心,你即将打开一个新的世界。对了, 变换 ( #lift(Operator)
) 会是一个难点,我相信你可以理解。
胖友,分享一波朋友圈可好!
对了,这是一个系列文,所以,千万不要错过。