一、Hystrix DashBoard
Hystrix提供了准实时的调用监控(Hystrix Dashboard),Hystrix会持续记录所有的通过Hystrix发起的请求执行信息,并以统计报表和图形的形式展现给用户,包括请求多少次、成功多少次、失败多少等等。Netflix通过hystrix-metrics-stream项目实现了对以上项目的监控。SpringCloud也提供了Hystrix Dashboard整和,对监控内容转化成可视界面。
二、使用
1. 监控界面服务
1.1 引入依赖(pom依赖)
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
</dependency>
1.2 激活组件(主启动类上)
@SpringBootApplication
@EnableHystrixDashboard //启用 hystrix dashboard
public class HystrixDashboardMain9001 {
public static void main(String[] args) {
SpringApplication.run(HystrixDashboardMain9001.class,args);
}
}
2 被监控服务
我们借用上次的Hystrix服务熔断的栗子:SpringCloud学习记录 | 第九篇:Hystrix服务熔断
2.1 需要引入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
3 把几个项目跑起来访问有服务熔断功能的方法,打开豪猪哥查看实时情况(一个Eureka集群、一个Hystrix Dashboard、一个有服务熔断功能的服务。参考文章末尾)
3.1 Hystrix Dashboard配置,点击:Monitor Stream
3.2 调用有服务熔断功能的服务和查看Hystrix Dashboard监控信息
3.2.1 没有出现服务熔断,注意看图中的Circuit为Close状态
3.2.2 出现服务熔断,注意看图中的Circuit为Open状态
3.2.3 其他信息(七色、一圈、一线)
七色:如下图
一圈:根据实际的请求量发生变化,流量越大圈圈越大
一线:反应流量上升和下降的趋势
其他
1. 参考代码:https://github.com/TianLuhua/springCloud2020.git
2. Eureka注册中心:cloud-eureka-server7001,cloud-eureka-server7002
3. 服务端 cloud-provider-hystrix-payment8001(具有服务降级功能)
4. Hystrix Dashboard:cloud-consume-hystrix-dashboard9001