SpringCloud2.0 Turbine 断路器集群监控 基础教程

Posted 传陆编程

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringCloud2.0 Turbine 断路器集群监控 基础教程相关的知识,希望对你有一定的参考价值。

1、启动基础工程

1.1、启动【服务中心】集群,工程名称:springcloud-eureka-server

1.2、启动【服务提供者】集群,工程名称:springcloud-eureka-client

1.3、启动【服务消费者】,工程名称:springcloud-eureka-ribbon

1.4、启动【服务消费者】,工程名称:springcloud-eureka-feign

1.5、启动【断路器仪表看板】,工程名称:springcloud-eureka-hystrix-dashboard

2、创建【断路器集群监控】,即 Eureka Turbine

2.1、新建 Spring Boot 工程,工程名称:springcloud-eureka-turbine

2.2、工程 pom.xml 文件添加如下依赖:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-netflix-turbine</artifactId>
</dependency>

2.3、在工程启动类中,添加注解 @EnableTurbine

package com.miniooc.eurekaturbine;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.turbine.EnableTurbine;

/**
 * EurekaTurbineApplication
 *
 * @author 宋陆
 * @version 1.0.0
 */
@EnableTurbine
@SpringBootApplication
public class EurekaTurbineApplication {

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

}

2.4、新建工程配置文件 application.yml ,配置内容:

server:
  port: 52640

spring:
  application:
    name: eureka-turbine

eureka:
  instance:
    hostname: localhost
    # 表示eureka client间隔多久去拉取服务注册信息,默认为30秒,如果要迅速获取服务注册状态,可以缩小该值
    lease-renewal-interval-in-seconds: 5
    # 表示eureka server至上一次收到client的心跳之后,等待下一次心跳的超时时间,在这个时间内若没收到下一次心跳,则将移除该instance。
    # 默认为90秒
    # 如果该值太大,则很可能将流量转发过去的时候,该instance已经不存活了。
    # 如果该值设置太小了,则instance则很可能因为临时的网络抖动而被摘除掉。
    # 该值至少应该大于 leaseRenewalIntervalInSeconds
    lease-expiration-duration-in-seconds: 10
  client:
    serviceUrl:
      defaultZone: http://localhost:9527/eureka/,http://localhost:9528/eureka/,http://localhost:9529/eureka/

turbine:
  app-config: eureka-discovery-ribbon, eureka-discovery-feign
  aggregator:
    cluster-config: default
  cluster-name-expression: new String("default")
  #更改turbine连接的默认uri ,默认为actuator/hystrix.stream
  instanceUrlSuffix: hystrix.stream

2.5、启动【断路器集群监控】工程

2.6、打开浏览器,访问 http://localhost:52630/hystrix

2.7、监控地址输入 http://localhost:52640/turbine.stream 来监控 springcloud-eureka-turbine 服务,点击【Monitor Stream】按钮,开启断路器指标看板

 

如果出现 Loading... 状态,只要请求一下 http://localhost:52610/ribbonInfo,http://localhost:52620/feignInfo,就可以看到数据指标了。

至此,我们简单实现了【断路器集群监控】,即同时监控了springcloud-eureka-ribbon, springcloud-eureka-feign两个服务

以上是关于SpringCloud2.0 Turbine 断路器集群监控 基础教程的主要内容,如果未能解决你的问题,请参考以下文章

21断路器集群监控Turbine

服务容错保护断路器Hystrix之四:turbine集群监控

springcloud的Hystrix turbine断路器聚合监控实现(基于springboot2.02版本)

断路器Hystrix与Turbine集群监控-Spring Cloud学习第三天

业余草 SpringCloud教程 | 第十二篇: 断路器聚合监控(Hystrix Turbine)(Finchley版本)

企业分布式微服务云SpringCloud SpringBoot mybatis (十三)断路器聚合监控(Hystrix Turbine)