Ribbon断路器和Hystrix的区别
Posted
技术标签:
【中文标题】Ribbon断路器和Hystrix的区别【英文标题】:Difference between Ribbon circuit breaker and Hystrix 【发布时间】:2016-01-11 13:22:54 【问题描述】:我正在尝试使用 Spring Cloud 和 Spring Boot。它使用 Netflix OSS 应用程序,其中有 Ribbon 和 Hystrix。
Ribbon 是一个负载平衡器,具有一些功能,其中之一是断路器。
Hystrix 是一个断路器应用程序。
我不知道它们之间的区别。如果 Ribbon 已经带有断路器功能,为什么还要使用 Hystrix。
我可以在同一个连接器中使用这两个应用程序吗?
【问题讨论】:
【参考方案1】:除了与 Hystrix 集成外,我不知道功能区中有任何断路器。我们建议同时使用 Ribbon 负载平衡器和 hystrix 断路器。
【讨论】:
感谢您的回答,本文摘自功能区网站。 github.com/Netflix/ribbon/wiki/… 和 github.com/Netflix/ribbon/wiki/… 这不是一个完美的断路器,但它可以完成这项工作。 断路器模式涉及的不仅仅是检查服务器是否启动,如果没有则继续下一个。探测(通过发送一些请求)、自动恢复、强大且可预测的故障处理等。 @spencergibb 有没有地方我可以找到ribbon和hystrix如何集成的地方。一些负载平衡IRule
s 像AvailabilityFilteringRule
会进行有限的断路(通过仅在看起来还活着的服务器之间对uprequest 进行负载平衡,如果没有看起来还活着,则会引发异常[也许?])。您能解释一下 Ribbon 如何处理非 200 响应并将该信息级联到 hystrix(是通过显式抛出异常吗?)
你能澄清一下“我们推荐”中的“我们”是谁吗?谢谢:)以上是关于Ribbon断路器和Hystrix的区别的主要内容,如果未能解决你的问题,请参考以下文章
11RestTemplate+Ribbon整合断路器Hystrix
Spring Cloud断路器监控(Hystrix Dashboard)