与正常的异常处理相比,Hystrix的优势是什么?

Art*_*dło 5 java spring hystrix microservices spring-cloud

我是Hystrix主题和弹性服务概念的新手,我正在经历一些课程,这个问题进入我的脑海.

在Hystrix中,我需要为优雅降级定义回退方法,然后在电路断开时调用此方法.但我可以想象只是用代码包装代码,try并且catch当出现特殊异常时(例如,对于超时),在catch子句中调用fallback方法.当被叫服务启动时,将调用普通代码.

当然,有了Hystrix,我可以另外监控这个,但它给了我什么呢?我很确定我不理解整个概念.

Sun*_*hal 7

如你所说,它可以简单地包装在try-catch块下然后为什么选择Hystrix或其他库?我经历的:

  • 已经是test proven图书馆了.
  • 能力skip original intended calls and fallback.请注意,如果将其包装在try-catch下,则仍会尝试连接并发送命令,该命令最终会因为依赖性降低而超时.在呼叫之前了解此信息将允许在某个时间跳过呼叫(根据配置),您可以保存这些资源
  • 提供使用断路Sliding Time Window以及
  • Metrics and Dashboarding 提供开箱即用,可以帮助您窥视您的系统和依赖连接
  • BulkHead通过使用不同的实现Thread Pools
  • 降低维护成本
  • 健康检查能力.它提供了一个运行状况监视API的运行状况检查类