概述
概述
分布式的架构微服务需要实时监控,及时查看资源
Hystrix提供了这一监控功能(Hystrix Dashboard),Hystrix会持续地记录所有通过Hystrix发起的请求的执行信息,并以统计报表和图形的形式展示给用户,包括每秒执行多少请求多少成功,多少失败等。Netflix通过hystrix-metrics-event-stream项目实现了对以上指标的监控。Spring Cloud也提供了Hystrix Dashboard的整合,对监控内容转化成可视化界面。
使用
1.新建工程demo-consumer-hystrix-dashboard
pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>demo1</artifactId>
<groupId>com.yan</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>demo-consumer-hystrix-dashboard</artifactId>
<dependencies>
<!-- hystrix和 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>
<!--Fegin依赖-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-feign</artifactId>
</dependency>
<!-- Ribbon相关 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-ribbon</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<!-- actuator监控信息完善 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<!-- 修改后立即生效,热部署 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<!-- 自己定义的api -->
<dependency>
<groupId>com.yan</groupId>
<artifactId>demo-api</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
2.yml
server:
port: 9001
3.建立主启动类 加入注解@EnableHystrixDashboard
package com.yan.cloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.hystrix.dashboard.EnableHystrixDashboard;
/**
* @Author: 闫明辉
* @Description:
* @Date: Create in 14:54 2020/3/9
*/
@SpringBootApplication
@EnableHystrixDashboard
public class DeptConsumer_DashBoard_App {
public static void main(String[] args) {
SpringApplication.run(DeptConsumer_DashBoard_App.class,args);
}
}
完成
测试
1.启动demo-consumer-hystrix-dashboard 访问http://localhost:9001/hystrix
出现以下界面为成功
2.启动eureka集群 ,demo-provider-dept-hystrix-8001
测试接口是否能正常访问 http://localhost:8001/dept/get/1
ok!
访问 http://localhost:8001/hystrix.stream 这个为8001的实时信息监控,全是数据
3.图形化监控界面 在localhost:9001/hystrix中填写监控端口
第一个框是localhost::+自己设置的端口号+/hystrix.stream
第二个框是实时监控间隔 单位为ms
第三个框是监控实例名字
点击Monitor Stream 即可
4.这个界面如何看?
右上角分别代表服务器访问的各种状态
中间靠上的区域是各种状态统计的次数
每个颜色分别对应着不同状态
第一个实心圆:共有两种含义。它通过颜色的变化代表了实例的健康程度,它的健康度从绿色<黄色<橙色<红色递减。
该实心圆除了颜色的变化之外,它的大小也会根据实例的请求流量发生变化,流量越大该实心圆就越大。所以通过该实心圆的展示,就可以在大量的实例中快速的发现故障实例和高压力实例。
旁边的曲线
曲线:用来记录2分钟内流量的相对变化,可以通过它来观察到流量的上升和下降趋势。
参考资料:尚硅谷周阳Spring Cloud讲解
本文若有错误请指正,互相学习,加油!
最后
以上就是娇气日记本为你收集整理的Hystrix之服务监控概述使用测试的全部内容,希望文章能够帮你解决Hystrix之服务监控概述使用测试所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复