Hystrix Dashboard使用及面板参数详述
1、简介
Hystrix Dashboard是一个通过收集actuator端点提供的Hystrix流数据,并将其图表化的客户端。如果需要通过图表化的界面查看被断路器保护的方法相关调用信息、或者实时监控这些被断路器保护的应用的健康情况,就可以使用Hystrix Dashboard。
2、正文
2.1 启动Hystrix Dashboard
创建一个Spring Boot项目添加Hystrix Dashboard 依赖
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
</dependency>
在启动类上使用@EnableHystrixDashboard注解来启动Hystrix Dashboard
@SpringBootApplication
@EnableHystrixDashboard
public class Application {public static void main(String[] args) {SpringApplication.run(Application.class, args);}
}
指定Hystrix Dashboard服务启动端口
server:port: 17777
启动服务,访问/hystrix端点,看到如下界面则证明Hystrix Dashboard启动成功
2.2 启用Actuator端点
Hystrix Dashboard是通过实时获取Actuator端点提供的Hystrix流来实时监控这些被断路器保护的应用的健康情况;因此在这些被断路器保护的应用中需要开启Hystrix流的Actuator端点(注意:如下所有配置都是在已经集成了Hystrix的服务中进行的相关操作)。
引入actuator依赖
<!--actuator 依赖-->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
暴露hystrix端点
# 暴露hystrix端点
management:endpoints:web:exposure:include: 'hystrix.stream'
在Hystrix Dashboard中输入服务暴露的hystrix流地址http://localhost:18888/actuator/hystrix.stream
点击Monitor Stream之后进入的初始界面如下所示(如果没出现页面,只是显示loading,那就说明断路器方法未被调用,只需向断路器方法发送一次请求即可):
2.3 Hystrix Dashboard面板参数介绍
Hystrix Dashboard面板可分上下两部分来查询,上面部分是断路器方法调用的相关信息,Circuit,下面部分是Hystrix为断路器方法提供的线程池相关信息,Thread Pools。
Circuit:
Circuit这里展示的当前方法的相对信息,如果有多个方法被断路器保护,那么这里将会依此展示多个方法的相关信息。
在图表中,左上角的圆圈代表了该方法的流量和状态:
- 圆圈越大代表方法流量越大
- 圆圈为绿色代表断路器健康、黄色代表断路器偶发故障、红色代表断路器故障
右上角的计数器(三列数字):
第一列从上到下
- 绿色代表当前成功调用的数量
- 蓝色代表短路请求的数量
- 蓝绿色代表错误请求的数量
第二列从上到下
- 黄色代表超时请求的数量
- 紫色代表线程池拒绝的数量
- 红色代表失败请求的数量
第三列
- 过去10s的错误请求百分比
Thread Pools:
Hystrix会针对一个受保护的类创建一个对应的线程池,这样做的目的是Hystrix的命令被调用的时候,不会受方法请求线程的影响(或者说Hystrix的工作线程和调用者线程相互之间不影响)
在图表中,左上角的圆圈代表了该线程池的流量和状态:
- 圆圈越大代表线程池越活越,流量越大
- 圆圈颜色代表的是线程池的健康状况
左下角从上至下:
- Active代表线程池中活跃线程的数量
- Queued代表排队的线程数量,该功能默认禁止,因此默认情况下始终为0
- Pool Size代表线程池中线程的数量(上面图我搞错了,困得死MMP)
右下角从上至下:
- Max Active代表最大活跃线程,这里展示的数据是当前采用周期中,活跃线程的最大值
- Execcutions代表线程池中线程被调用执行Hystrix命令的次数
- Queue Size代表线程池队列的大小,默认禁用,无意义
Hystrix Dashboard使用及面板参数详述相关推荐
- Hystrix及Hystrix Dashboard
Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command的请求响应时间,请求成功率等数据 ...
- Spring Cloud(五)断路器监控(Hystrix Dashboard)
在上两篇文章中讲了,服务提供者 Eureka + 服务消费者 Feign,服务提供者 Eureka + 服务消费者(rest + Ribbon),本篇文章结合,上两篇文章中代码进行修改加入 断路器监控 ...
- [Spring cloud 一步步实现广告系统] 19. 监控Hystrix Dashboard
在之前的18次文章中,我们实现了广告系统的广告投放,广告检索业务功能,中间使用到了 服务发现Eureka,服务调用Feign,网关路由Zuul以及错误熔断Hystrix等Spring Cloud组件. ...
- SpringCloud 入门教程(八): 断路器指标数据监控Hystrix Dashboard 和 Turbine
1. Hystrix Dashboard (断路器:hystrix 仪表盘) Hystrix一个很重要的功能是,可以通过HystrixCommand收集相关数据指标. Hystrix Dashboa ...
- Hystrix Dashboard
本文章基于spring-boot-starter-parent 2.0.6RELEASE,spring-cloud-dependencies Finchley.SR2. Hystrix Dashboa ...
- Spring Cloud第十二篇:断路器监控(Hystrix Dashboard)
在我的第四篇文章断路器讲述了如何使用断路器,并简单的介绍了下Hystrix Dashboard组件,这篇文章更加详细的介绍Hystrix Dashboard. 一.Hystrix Dashboard简 ...
- (十二)企业级java springcloud b2bc商城系统开源源码二次开发-断路器监控(Hystrix Dashboard)...
一.Hystrix Dashboard简介 在微服务架构中为例保证程序的可用性,防止程序出错导致网络阻塞,出现了断路器模型.断路器的状况反应了一个程序的可用性和健壮性,它是一个重要指标.Hystrix ...
- java B2B2C springmvc mybatis多租户电子商城系统(五):熔断监控Hystrix Dashboard和Turbine...
Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command的请求响应时间, 请求成功率等数 ...
- springcloud系列九 整合Hystrix Dashboard
Hystrix Dashboard是Hystrix的仪表盘组件,主要用来实时监控Hystrix的各项指标信息,通过界面反馈的信息可以快速发现系统中存在的问题. 整合快速体验: pom.xml(这个是F ...
最新文章
- php通过http请求发送数组
- PennyLane | 用于量子计算机可微分编程的跨平台Python库
- Android应用程序请求SurfaceFlinger服务渲染Surface的过程分析
- Js 控件编写 继承:extend、mixin和plugin(一)
- recyclerview 分组_Android使用RecyclerView实现跨列分组
- PTA-1021—— Deepest Root(最后两组数据错误)
- 实战PHP数据结构基础之队列
- iOS开发 Linker command fail with exit code 1(use -v to see invocation)
- 提升数据建模的10种技术措施
- 一款很好用的软还原卡
- 《王家视频教程图书馆》
- 程序员需要掌握的单词
- Vue3源码解析04--响应式核心effect
- python网课教学_如何上好网课 — 老师录课和在线上课教学经验谈
- 异形管口快速接头,格雷希尔G70系列和G72系列有什么区别?
- 时尚穿越html5游戏,时尚穿越之旅
- javascript弹出浏览器的三种提示框:提示信息框、确认框、输入文本框
- 史上第一张黑洞真身照片终于问世——原来黑洞不是黑的...
- [网络流] Topcoder SRM556DIV. OldBridges
- windows 大文件共享传输错误 0X8007003B