Hystrix DashBoard监控平台搭建

要想掌握Hystrix组件,我们应该通过以下两个方面进行学习:

1、什么是服务监控?
除了熔断器机制,Hystrix还提供了准实时的调用监控(Hystrix DashBoard),Hystrix会持续的记录通过Hystrix发起的请求的执行信息,以统计报表和图形的形式展示给客户,包括每秒执行多少,请求多少成功,请求失败多少等;

Netflix通过Hystrix-metics-event-stream项目实现了对以上指标的监控,SpringCloud也提供了Hystrix DashBoard的整合,对监控内容转化成可视化的界面;

2、在实战中我们如何使用服务监控?
(1)首先,我们需要创建一个监控模块,在pom里面添加相应的依赖:

 <!--导入 hystrix 与 hystrix-dashboard 依赖-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
        </dependency>

(2)接下来我们配置application.yml文件,添加监控模块的端口号:
server:
port: 9001
(3)创建一个启动类,在启动类上添加@EnableHystrixDashBoard注解,表明开启服务监控;我们可以试运行,启动该服务后可访问http://localhost:9001/hystrix,我们可以看到一个豪猪的图形界面;
在这里插入图片描述
(4)配置好监控服务后,我们开始配置被监控的服务类;在该类中得确认我们添加了spring-cloud-start-netflix-hystrix熔断器的依赖,与此同时,我们得先加上starter-actuator监控依赖;

 <!--监控依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

        <!-- 导入hystrix依赖 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
        </dependency>

(5)接着在我们需要被监控的服务application.yml配置文件中添加暴露端点:

# 在被监控服务上添加暴露端点
management:
  endpoints:
    web:
      exposure:
        include: hystrix.stream

(5)启动服务,我们来进行图形化监控测试;
1、多次进行被监控服务的请求测试:http://localhost:8001/product/get/1
2、访问地址http://localhost:9001/hystrix,登录到我们豪猪页面,如下:豪猪页面
3、在第一个输入框填写我们配置好的监控地址:http://localhost:8001/actuator/hystrix.stream,

(1).Delay:控制服务器上轮询监控信息的延迟时间,默认为2000毫秒。可以通过配置该属性来降低客户端的网络和CPU消耗;
(2).Title:可以通过配置该信息来展示更合适的标题,默认会使用具体监控实例的URL
在这里插入图片描述
(3).监控效果:如果被监控的服务中没有请求会一直显示"Loading"
(4).这时候如果我们访问一下被监控的服务的话,可以看到出现如下效果:
在这里插入图片描述
3、如何查看监控页面?
1、7色:我们的状态图由七种颜色在右上角展出;
2、1圈:实心圈有两种含义:
(1)它通过颜色的变化代表实例的健康程度,它的健康程度从绿色<黄色<橙色<红色递减;
(2)实心圈的大小会通过实例的请求流量发生变化,流量越大实心圈越大,故我们可以通过实心圈的展示很容易的就发现高压实例和故障实例;
3、1线:曲线用来记录两分钟内流量的相对变化,可以通过它来观察到流量的上升和下降趋势
整个状态图的说明:

自此我们关于Hystrix DashBoard监控平台的介绍就结束了~~~

发布了26 篇原创文章 · 获赞 9 · 访问量 747

猜你喜欢

转载自blog.csdn.net/z19950712/article/details/104000352