Hystrix 是一个延迟和容错库,旨在隔离远程系统,服务和第三方库的访问点,当
出现故障是不可避免的故障时,停止级联故障并在复杂的分布式系统中实现弹性。
通常对于使用微服务架构开发的系统,涉及到许多微服务。这些微服务彼此协作。
思考以下微服务
假设如果上图中的微服务 9 失败了,那么使用传统方法我们将传播一个异常。但
这仍然会导致整个系统崩溃。
随着微服务数量的增加,这个问题变得更加复杂。微服务的数量可以高达 1000.
这是 hystrix 出现的地方 我们将使用 Hystrix 在这种情况下的 Fallback 方法功能。
我们有两个服务 employee-consumer 使用由 employee-consumer 公开的服务。
简化图如下所示
现在假设由于某种原因,employee-producer 公开的服务会抛出异常。我们在这
种情况下使用 Hystrix 定义了一个回退方法。这种后备方法应该具有与公开服务相
同的返回类型。如果暴露服务中出现异常,则回退方法将返回一些值。