侧边栏壁纸
博主头像
张种恩的技术小栈博主等级

行动起来,活在当下

  • 累计撰写 748 篇文章
  • 累计创建 65 个标签
  • 累计收到 39 条评论

目 录CONTENT

文章目录

SpringCloud(11)之豪猪HystrixDashboard监控

zze
zze
2018-10-27 / 0 评论 / 0 点赞 / 651 阅读 / 2593 字

介绍

HystrixDashboard 是 Hystrix 提供的准实时的调用监控,Hystrix 会持续地记录所有通过 Hystrix 发起的请求的执行信息,并以统计报表和图形的形式展示给用户,包括每秒执行多少次请求、多少成功、多少失败等。Netflix 通过 hystrix-metrics-events-stream 项目实现了对以上指标的监控。SpringCloud 也提供了 HystrixDashboard 的整合,对监控内容转化成可视化界面。

使用

1、新建名为 "microservicecloud-consumer-hystrix-dashboard" 的子工程作为监控微服务工程,添加相关依赖:

<!--Hystrix Dashboard 相关依赖-->
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-hystrix</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-hystrix-dashboard</artifactId>
</dependency>

2、新建配置文件,配置占用端口:

# application.yml
server:
  port: 9001

3、新建主启动类,使用注解添加监控支持:

// zze.springcloud.Application_9001
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard;

@SpringBootApplication
@EnableHystrixDashboard // 开启监控支持
public class Application_9001 {

    public static void main(String[] args) {
        SpringApplication.run(Application_9001.class, args);
    }
}

4、保证所有的 Provider 服务都添加了监控依赖:

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

5、测试监控服务自身是否正常,启动 microservicecloud-consumer-hystrix-dashboard 服务,访问“http://localhost:9001/hystrix”如果出现下面页面则测试通过:

image.png

6、监控测试:

1、启动 7001、7002、7003 Eureka 集群
2、启动 microservicecloud-provider-dept-hystrix-8001 带有熔断功能的 Provider 服务
3、启动 microservicecloud-consumer-dept-80 消费者服务
4、启动 microservicecloud-consumer-hystrix-dashboard 监控服务
5、访问监控服务提供的可视化 web 页,http://localhost:9001/hystrix:
6、随后出现如下界面:

image.png

7、访问被监控的服务,会发现曲线会根据访问频率发生变化

image.png

0

评论区