SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)

一、整合Hystrix、pom中引入


        
            org.springframework.cloud
            spring-cloud-starter-netflix-hystrix
        

        
            com.netflix.hystrix
            hystrix-javanica
        

加入@EnableCircuitBreaker注解

SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)_第1张图片

第一步:

SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)_第2张图片

实现Feign创建的接口(这里可以看https://blog.csdn.net/xcc_2269861428/article/details/102924454)

SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)_第3张图片

这里解决了调用别的系统的熔断,

第二步:有可能自己的接口也会出错,所以自己的接口也得加个监控

使用@HystrixCommand监控

SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)_第4张图片

============================================================================

完毕,当服务出现问题时,就会被调用。

然而我在商品服务中加了个睡眠2s;发现无论系统宕不宕机都会执行监控方法。

SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)_第5张图片

网上百度了半天也没找到答案,后来看源码视频才发现Histrix也有默认时间为1s,所以需要在配置文件中去修改这个时间。

hystrix:
  command:
    default:
      execution:
        isolation:
          thread:
            timeoutInMilliseconds: 2000

二、仪表盘(Dashboard)


        
            org.springframework.cloud
            spring-cloud-starter-netflix-hystrix-dashboard
        
        
            org.springframework.boot
            spring-boot-starter-actuator
        

加上@EnableHystrixDashboard注解

SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)_第6张图片

修改配置文件

management:
  endpoints:
    web:
      exposure:
        include: "*"

之后启动项目:访问http://127.0.0.1:8084/hystrix

SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)_第7张图片

输入: http://127.0.0.1:8084/actuator/hystrix.stream

SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)_第8张图片

点击Monitor

SpringCloud 整合hystrix 实现熔断以及仪表盘(Dashboard)_第9张图片

你可能感兴趣的:(springcloud)