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兩個服務


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM