• 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两个服务

  • 相关阅读:
    vscode常用快捷键及常用设置
    markdown语法笔记
    Recoil 了解一下
    url的组成
    webpack基础配置
    Unity3D 游戏引擎之详解游戏开发音频的播放
    未能加载文件或程序集“AspNetPager”或它的某一个依赖项。参数错误
    Windows* 8商店与桌面应用开发
    unity3d阶段性学习脚本代码(2个是摄像机跟随(2D游戏中的),1个是角色跳跃移动脚本)
    unity3d与web交互的方法
  • 原文地址:https://www.cnblogs.com/songlu/p/9977260.html
Copyright © 2020-2023  润新知