Hystrix介绍

Hystrix翻译成汉语有海参、豪猪和猬草的意思,它们的特征是身上长有棘刺,主要是起到保护的作用,这也彰显了Hystrix在微服务中的作用。

 

Hystrix是由Netflix公司开源的一个延迟和容错库,它通过隔离远程系统、服务或者第三方库之间的访问,防止级联失败并提供回退选项,从而提升系统的可用性、容错性与局部应用的弹性。

通过GitHub的介绍,我们可以了解到Hystrix的设计目标和原则。

 

Hystrix的设计目标如下:

 对来自依赖的延迟和故障进行防护和控制。

 阻止故障的连锁反应。

 快速失败并迅速恢复。

 回退并优雅降级。

 提供近实时的监控与警告。

 

Hystrix的设计原则如下:

 防止任何单独依赖项耗尽所有资源(例如用户线程)。  服务过载立即切断并快速失败,防止排队。  在可行的情况下提供备用的服务,以保护用户免受故障的影响。  使用隔离技术(例如隔板、泳道和断路器模式)来限制任何一种依赖关系的影响。  通过近实时指标、监控和警告确保故障被及时发现。  通过在Hystrix中以低延迟传播配置的更改来优化恢复时间,并支持动态属性配置,使用户可以通过低延迟反馈回路进行实时操作修改。  防止整个依赖客户端执行失败,而不仅仅是网络通信失败。

 

由上述可知,Hystrix具备服务熔断、服务降级、线程和影响隔离以及实施指标监控等强大功能。而在Spring Cloud中使用Hystrix有两种方式来实现服务的熔断和降级等操作,一种是结合Ribbon来实现,另外一种是结合Feign来实现。

posted @ 2022-12-14 15:16  cnetsa  阅读(359)  评论(0编辑  收藏  举报