SpringCloud-Hystrix-Dashboard客户端服务监控的实现方法

服务监控

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

监控服务测试

1. 服务监控是针对客户端(消费者)的,所以客户端需要做出一些配置

2. 普通消费者只需要添加hystrix和dashboard的依赖+@EnableHystrixDashboard就可以把消费者变成一个监控中心,同时也失去了消费者的功能,不能再访问注册中心

一、客户端(消费者)

1. 新建消费者服务9001(复制),新增监控依赖

   <!--Hystrix-->
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-hystrix</artifactId>
      <version>1.4.7.RELEASE</version>
    </dependency>

    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-hystrix-dashboard</artifactId>
      <version>1.4.7.RELEASE</version>
    </dependency>

2. 修改配置文件

server:
 port: 9001
hystrix:
 dashboard:
  proxy-stream-allow-list: "*"

3. 为启动类添加支持监控的注解

//Eureka和Ribbon整合以后,客户端可以根据服务名称直接调用,不用关心IP地址和端口号
@SpringBootApplication
@EnableHystrixDashboard
//@RibbonClient(name = "SPRINGCLOUD-PROVIDER-DEPT",configuration = MyLoaderBalanceConfig.class)  //在微服务启动的时候加载自定义的Ribbon
public class DeptConsumer_hystrix_dashboard_9001 {
  public static void main(String[] args) {
    SpringApplication.run(DeptConsumer_hystrix_dashboard_9001.class,args);
  }
}

二、服务端(生产者)

1. 所以的服务提供者都要添加被监控的依赖和Hystrix的依赖

 <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>

    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-hystrix</artifactId>
      <version>1.4.7.RELEASE</version>
    </dependency>

2. 为被监控的服务提供者的启动类添加一个Bean

  @Bean
  public ServletRegistrationBean hystrixMetricsStreamServlet() {
    ServletRegistrationBean registration = new ServletRegistrationBean(new HystrixMetricsStreamServlet());
    registration.addUrlMappings("/actuator/hystrix.stream");
    return registration;
  }

三、查看

  1. 启动Eureka集群-7001、7002
  2. 启动服务提供者-8001,并查看Eureka集群,服务是否注册成功
  3. 启动服务消费者-9001
  4. 尝试直接访问服务提供者,不通过消费者和注册中心,http://localhost:8001/hystrix/dept/get/2
  5. 打开服务提供者的 http://localhost:8001/actuator/hystrix.stream,查看是否在ping
  6. 打开消费者 http://localhost:9001/hystrix


疑问:9001作为一个消费者模块,为什么不能访问生产者,难道这个模块只是用来监控的平台?



tips:


到此这篇关于SpringCloud-Hystrix-Dashboard客户端服务监控的文章就介绍到这了,更多相关SpringCloud-Hystrix-Dashboard服务监控内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • SpringCloud-Hystrix-Dashboard客户端服务监控的实现方法

    服务监控 除了隔离依赖服务的调用以外,Hystrix还提供了准实时的调用监控(Hystrix Dashboard),Hystrix会持续地记录所有通过Hystrix发起的请求的执行信息,并以统计报表和图形的形式展示给用户,包括每秒执行多少请求,多少成功,多少失败等等. Netflix通过hystrix-metrics-event-stream项目实现了对以上指标的监控,SpringCloud也提供了HystrixDashboard的整合,对监控内容转化成可视化界面! 监控服务测试 1. 服务监控

  • SpringCloud中的断路器(Hystrix)和断路器监控(Dashboard)

    前言 本篇主要介绍的是SpringCloud中的断路器(Hystrix)和断路器指标看板(Dashboard)的相关使用知识. SpringCloud Hystrix Hystrix 介绍 Netflix创建了一个名为Hystrix的库,它实现了断路器模式.主要的目的是为了解决服务雪崩效应的一个组件,是保护服务高可用的最后一道防线. 开发准备 开发环境 •JDK:1.8 •SpringBoot:2.1.1.RELEASE •SpringCloud:Finchley 注:不一定非要用上述的版本,可

  • SpringCloud之熔断监控Hystrix Dashboard的实现

    前言 SpringCloud 是微服务中的翘楚,最佳的落地方案. SpringCloud 中的 Hystrix 组件可以实现熔断,而在实际情况中,一般还需要直观地看到各个服务的调用情况, 这时,就用到了 SpringCloud 另一个组件:Hystrix Dashboard. Hystrix Dashboard 是一款针对于 Hystrix 进行实时监控的工具,还提供了友好的图形化界面. 源码 GitHub地址:https://github.com/intomylife/SpringCloud

  • springcloud 熔断监控Hystrix Dashboard和Turbine

    Hystrix-dashboard是一款针对Hystrix进行实时监控的工具,通过Hystrix Dashboard我们可以在直观地看到各Hystrix Command的请求响应时间, 请求成功率等数据.但是只使用Hystrix Dashboard的话, 你只能看到单个应用内的服务信息, 这明显不够. 我们需要一个工具能让我们汇总系统内多个服务的数据并显示到Hystrix Dashboard上, 这个工具就是Turbine. Hystrix Dashboard 我们在熔断示例项目spring-c

  • Springcloud hystrix服务熔断和dashboard如何实现

    服务在经过一定负荷之后,如果达到一定上限之后会中断进行报错,而服务调用的方法也会报错等等,一旦整体服务停下,别的客户端再来访问就会无法调用.对此需要进行另外一种服务熔断模式. 不同于现实中的熔断保险丝,服务熔断是在系统服务达到一定错误之后,自动熔断降级,采取备用方法,但是在一定时间后客户端再次调用成功后,一定时间内成功率上去,系统的熔断机制会慢慢的关闭,恢复到正常请求的状态. 本篇接上一章直接改动. 1.主启动类加上新的注解. @EnableCircuitBreaker 2.service写入新

  • SpringCloud Hystrix熔断器使用方法介绍

    目录 Hystrix(hi si ju ke si)概述 Hystix 主要功能 隔离 Hystrix 降级 Hystrix降级-服务提供方 初始化程序和Fiegn程序一致 Hystrix降级-服务消费方 provider与Fiegin一致 Hystrix 熔断 Hystrix 熔断监控 Turbine聚合监控 搭建监控模块 修改被监控模块 启动测试 Hystrix(hi si ju ke si)概述 Hystix 是 Netflix 开源的一个延迟和容错库,用于隔离访问远程服务.第三方库,防止

  • SpringCloud微服务之Hystrix组件实现服务熔断的方法

    一.熔断器简介 微服务架构特点就是多服务,多数据源,支撑系统应用.这样导致微服务之间存在依赖关系.如果其中一个服务故障,可能导致系统宕机,这就是所谓的雪崩效应. 1.服务熔断 微服务架构中某个微服务发生故障时,要快速切断服务,提示用户,后续请求,不调用该服务,直接返回,释放资源,这就是服务熔断. 熔断生效后,会在指定的时间后调用请求来测试依赖是否恢复,依赖的应用恢复后关闭熔断. 2.服务降级 服务器高并发下,压力剧增的时候,根据当业务情况以及流量,对一些服务和页面有策略的降级(可以理解为关闭不必

  • SpringCloud Hystrix的使用

    简介 在分布式系统中,服务与服务之间依赖错综复杂,一种不可避免的情况就是某些服务将会出现失败.Hystrix是一个库,它提供了服务与服务之间的容错功能,主要体现在延迟容错和容错,从而做到控制分布式系统中的联动故障.Hystrix通过隔离服务的访问点,阻止联动故障,并提供故障的解决方案,从而提高了这个分布式系统的弹性. 面对的问题: 一个应用一般会依赖多个服务,每个服务由于网络不可靠,机房的不可靠等等不稳定的因素,总会导致服务的故障,如果我们不对这些故障做处理,就会进而导致整个系统的不可用. 服务

  • SpringCloud hystrix服务降级学习笔记

    目录 一.Hystrix简介 1.Hystrix是什么 2.Hystrix能干什么 二.服务熔断 1.服务熔断简介 2.配置pom.xml 3.配置application.yaml 4.修改Controller 5.修改启动类 6.效果图 三.服务降级 1.什么是服务降级 2.DeptClientFailBackFactory类 3.添加注解 4.修改application.yaml 5.效果图 四.DashBorder 1.新建一个module 2.pom.xml配置 3.配置applicat

  • Hystrix Turbine聚合监控的实现详解

    之前,我们针对的是一个微服务实例的Hystrix数据查询分析,在微服务架构下,一个微服务的实例往往是多个(集群化). 比如自动投递微服务 实例1(hystrix) ip1:port1/actuator/hystrix.stream 实例2(hystrix) ip2:port2/actuator/hystrix.stream 实例3(hystrix) ip3:port3/actuator/hystrix.stream 按照已有的方法,我们就可以结合dashboard仪表盘每次输入一个监控数据流ur

随机推荐