【问题标题】:Hystrix dependent commands failure suggestionHystrix 依赖命令失败建议
【发布时间】:2016-08-19 23:38:34
【问题描述】:

我有 2 个命令 1) DebitCommand(借记信用卡)

2) CreditCommand(贷记到账户)

从我们的用例角度来看,借记和贷记组合是一种原子操作,它连接到 2 个不同的系统(Rest call)。

当 CreditCommand 断路器短路时,借记没有意义,否则我们需要退还款项。这实际上增加了不必要的通话。 hystrix 有什么方法可以解决这个问题。

我的想法:

方法 1:将 DebitCommand 和 CreditCommand 合并为单个贷方命令 方法 2:在 DebitCommand 中执行调用一些如何获取 CreditCommand 电路的状态,并且仅在断路器打开或半打开或恢复时允许。

如果有任何人经历过这个用例,请你帮助你如何解决这个用例

【问题讨论】:

    标签: hystrix


    【解决方案1】:

    方法 2 查询电路状态作为是否拨打电话的依据(伪代码:if (circuit is healthy) { Place call through circuit })即使可用,也不是明智的做法。在高并发/多线程环境中,电路状态可能会在评估 if 条件和进行内部调用之间发生变化。所以这种方法不能保证第二次调用会成功。

    【讨论】:

      猜你喜欢
      • 2016-05-06
      • 2020-10-23
      • 2021-03-13
      • 2016-07-04
      • 2018-02-18
      • 1970-01-01
      • 1970-01-01
      • 2020-01-30
      • 2020-10-17
      相关资源
      最近更新 更多