【问题标题】:Hystrix circuit breaker trigger an Event in Spring Micro service implementationHystrix 断路器在 Spring Micro 服务实现中触发事件
【发布时间】:2018-09-11 20:26:38
【问题描述】:

有没有一种方法可以识别 Hystrix 何时从电路开路状态转变为半开路状态(在睡眠时间间隔之后)。当这种状态改变发生时,Hystrix 可以触发事件吗?任何 Hystrix 属性都可以告诉我们这一点吗?如果它可以触发事件,请告诉方法。任何代码示例也会有所帮助。

谢谢, 尼基尔

【问题讨论】:

标签: java spring microservices hystrix circuit-breaker


【解决方案1】:

hystrix 没有办法通知用户状态变化。 Hystrix 在事件通知器中提供了一些变量,但它不包含与状态有关的事件(HALF_OPEN 或 CLOSE)。

可以做的是创建一种机制,可以连续或延迟调用来检查 hystrix 命令的状态。可以通过以下方式获取 hystrix 实例:

HystrixCircuitBreaker circuitBreaker = HystrixCircuitBreaker.Factory.getInstance(HystrixCommandKey.Factory.asKey(name));

并发布此消息,我们执行相应的功能来检查断路器的状态,例如:

circuitBreaker!=null, circuitBreaker.allowRequest(), circuitBreaker.isOpen();

所以你的服务可以使用这些返回的状态。

【讨论】:

    猜你喜欢
    • 2018-07-09
    • 2019-03-19
    • 2021-04-11
    • 1970-01-01
    • 2017-02-18
    • 2018-11-14
    • 2012-02-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多