Hystrix重要概念

左心房为你撑大大i 提交于 2020-04-02 19:22:59

Hystrix 是一个用于处理分布式系统的延迟和容错的开源库, 在分布式系统里, 许多依赖不可避免的会调用失败, 比如超时,异常等, Hystrix能够保证在一个依赖出问题的情况下, 不会导致整体服务失败, 避免级联故障, 以提高分布式系统的弹性.

而"熔断器",熔断器本身是一种开关装置, 当某个服务单元发生故障后, 通过断路器的故障监控(类似熔断保险丝), 向调用方返回一个符合预期的, 可处理的备选响应(FallBack), 而不是长时间的等待或者抛出调用方 无法处理的异常, 这样就保证了服务调用方的线程不会被长时间, 不必要地占用, 从而避免了故障在分布式系统中的蔓延, 乃至雪崩.

服务降级

(例 :服务器忙, 请稍后再试) 遇到突发情况,异常,超时等,不让客户端等待并立刻返回一个友好提示,fallback

哪些情况会发出降级措施

  • 程序运行异常

  • 超时

  • 服务熔断触发服务降级

  • 线程池/信号量分布式系统的延迟和容错的开源库, 在分布式系统里, 许多依赖不可避免的会调用失败, 比如超时,异常等, Hystrix能够保证在一个依赖出问题的情况下, 不会导致整体服务失败, 避免级联故障, 以提高分布式系统的弹性.

而"熔断器",熔断器本身是一种开关装置, 当某个服务单元发生故障后, 通过断路器的故障监控(类似熔断保险丝), 向调用方返回一个符合预期的, 可处理的备选响应(FallBack), 而不是长时间的等待或者抛出调用方 无法处理的异常, 这样就保证了服务调用方的线程不会被长时间, 不必要地占用, 从而避免了故障在分布式系统中的蔓延, 乃至雪崩.

服务降级

(例 :服务器忙, 请稍后再试) 遇到突发情况,异常,超时等,不让客户端等待并立刻返回一个友好提示,fallback

哪些情况会发出降级措施

  • 程序运行异常

  • 超时

  • 服务熔断触发服务降级

  • 线程池/信号量满了也会导致服务降级

服务熔断

类似保险丝 当达到最大服务访问后, 直接拒绝访问, 直接拉闸, 然后调用服务降级的方法并返回一个友好提示

服务降级-> 进而熔断 -> 恢复调用链路

服务限流

秒杀高并发等操作, 严禁一窝蜂的拥挤,大家排队,一秒钟N个,有序进行

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!