【发布时间】:2018-07-09 18:04:42
【问题描述】:
Hystrix 主要用于使用 Spring Cloud 构建的应用程序。 话虽如此,一个应用程序可能有多个服务层。
例如亚马逊(亚马逊网站必须有多种服务,如登录、产品、购物车、订单、支付等)
客户端(比如网络用户)-> Web 应用程序 X -> 服务 A(它使用数据源 A)-> 服务 B(数据源 B)-> 服务 C(数据源 C)-> 服务 D (数据源 D)-> 服务 E(数据源 E)
在这种情况下,当服务 E 出现问题时,如何将其导航回客户端? Hystrix 在这里如何有助于了解服务 E 中一项特定功能的不可用性?
如果该示例是错误的,那么 Hystrix 范围是否仅限于一个服务中的多个进程,而不是一个应用程序中使用的多个服务? 话虽如此,上面的例子可以像下面这样调整
客户端(比如 web 用户)-> web 应用程序 X -> 服务 A -> 服务 A 内部假设有进程 1 -> 进程 2 -> 进程 3 -> 进程 4-> 进程 5 并且进程 5 中的任何失败都会被导航回进程 1,然后返回到客户端。
我的问题更多是关于在这里维护线程状态。
使用 try-catch,每个服务的线程范围都是有限的(如果有错误,请纠正我)。
Hystrix 如何在整个事务中维护线程状态?
【问题讨论】:
-
Spring cloud 断路器有一些问题。使用 Hystrix
-
谢谢。但是我的问题在这里有点不同。
-
很抱歉。您的主题行确实具有误导性。 :) 请参阅下面的答案。
标签: spring-cloud hystrix circuit-breaker