Hystrix 源码解析 —— 调试环境搭建

1. 依赖工具

  • Gradle
  • JDK
  • IntelliJ IDEA

推荐 Spring Cloud 书籍

2. 源码拉取

从官方仓库 https://github.com/Netflix/Hystrix.git Fork 出属于自己的仓库。为什么要 Fork ?既然开始阅读、调试源码,我们可能会写一些注释,有了自己的仓库,可以进行自由的提交。😈

使用 IntelliJ IDEA 从 Fork 出来的仓库拉取代码。在项目路径下,在命令行执行 ./gradlew 命令,Gradle 会下载依赖包,可能会花费一些时间,耐心等待下。其间可能会出现因为网络原因( 我相信你懂的 ),可能会出现失败的情况,淡定,重新执行上述命令直到成功。此刻,你就是一个 while(true) 的小强。

本文基于 master 分支。

3. 运行示例

在 hystrix-examples 子项目下,提供了大量的示例,如下图:

  • basic 包 :针对 Hystrix 每个特性提供小的单元测试示例。你可以从 CommandHelloWorld 开始尝试。
  • demo 包 :结合实际场景的实战小例子。运行入口为 HystrixCommandDemo 或者 HystrixCommandAsyncDemo 。恩,聪慧如你,从名字能看出它们的区别点。

可能有部分同学对 Hystrix 的特性了解的不是很清晰,笔者推荐如下文章:

另外,笔者也整理了下 Hystrix 的特性如下( 可能不是很严谨,主要辅助理解 ) :

  • 断路器机制
    • 计算线路健康度
  • Fallback ( 失败回退 )
  • 资源隔离
    • 方式
      • 线程池
      • 信号量
    • 依赖隔离
  • 执行模型
    • 同步执行
    • 异步执行
    • Reactive模式执行
      • observe
      • toObservable
  • 运维平台
    • 基础 Dashboard
    • 整合 Turbine
  • 缓存
  • 请求合并( HystrixCollapser )
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值