hystrix 页面_原创 | JavaWeb中常见的信息泄漏—Hystrix面板

本文介绍了微服务架构中Hystrix断路器的作用,防止服务故障传播。详细讲述了Hystrix的实现原理,并指导如何配置和使用Hystrix Dashboard进行监控。通过分析源代码,揭示了Hystrix Dashboard的监控数据获取过程。
摘要由CSDN通过智能技术生成
69a3b3bdf57c1379708a0d65956f5f77.png点击上方“蓝字”关注我们了解更多精彩

关于Hystrix

在微服务的应用场景中,通常会有很多层的服务调用。应用程序有数十个依赖关系,每个依赖关系在某些时候不可避免的会出现问题(例如调用响应时间过长或不可用)。

如果一个底层服务出现问题,由于服务与服务之间的依赖性,故障会被向上传播给用户。那么就需要一种机制,当底层服务不可用时,可以阻断故障的传播。
在SpringCloud中提供这个机制的组件就是断路器Hystrix。大致的工作流程如下图:

c6a43c7f92a6cf3b69074fadd5ac22a9.png

在微服务架构下,通常会有多个层次的服务调用。上图是微服架构下, 浏览器端通过API访问后台微服务的一个示意图,服务B因为某些原因失败,变得不可用,所有对服务B的调用都会超时。
当对B的调用失败达到一个特定的阀值(5秒之内发生20次失败是Hystrix定义的缺省值), 链路就会被处于open状态,之后所有所有对服务B的调用都不会被执行,取而代之的是由断路器提供的一个表示链路open的Fallback消息。
Hystrix提供了相应机制,可以让开发者定义这个Fallbak消息。Fallback可以是另一个由Hystrix保护的服务调用,也可以是固定的值。Fallback也可以设计成链式调用,先执行某些逻辑,再返回Fallback。
简单来说类似电闸,当电路中出现过载时就会断电保证安全。Hystrix可以检测到服务的可用性,但是不够直观。使用 HystrixDashboard会提供一个监控平台,方便查看服务的可用性。

90b4c9b89b194ea9589f1682026c0dba.png

具体实现

Dashboard是一个统一的断路器监控平台,一般会新建一个项目,引入相关依赖:

<dependency>  <groupId>org.springframework.cloudgroupId>  <artifactId>spring-cloud-starter-hystrix-dashboardartifactId>dependency>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值