病毒走春招到,总结19年面试官最常问的 Spring Cloud 面试题( 五 )

随着微服务数量的增加 , 这个问题变得更加复杂 。 微服务的数量可以高达1000.这是hystrix出现的地方 我们将使用Hystrix在这种情况下的Fallback方法功能 。 我们有两个服务employee-consumer使用由employee-consumer公开的服务 。

简化图如下所示

现在假设由于某种原因 , employee-producer公开的服务会抛出异常 。 我们在这种情况下使用Hystrix定义了一个回退方法 。 这种后备方法应该具有与公开服务相同的返回类型 。 如果暴露服务中出现异常 , 则回退方法将返回一些值 。

什么是Hystrix断路器?我们需要它吗?

由于某些原因 , employee-consumer公开服务会引发异常 。 在这种情况下使用Hystrix我们定义了一个回退方法 。 如果在公开服务中发生异常 , 则回退方法返回一些默认值 。

如果firstPage method() 中的异常继续发生 , 则Hystrix电路将中断 , 并且员工使用者将一起跳过firtsPage方法 , 并直接调用回退方法 。 断路器的目的是给第一页方法或第一页方法可能调用的其他方法留出时间 , 并导致异常恢复 。 可能发生的情况是 , 在负载较小的情况下 , 导致异常的问题有更好的恢复机会 。

推荐阅读