1.引入

在前一节中我们演示了单机模式下Hystrix服务监控Dashboard仪表盘,但是在实际生产中微服务都是集群模式,

为了更接近世界生产,我们在这里也给大家讲一下如何监控集群模式

2.准备工作

既然我们要监控集群模式,那么首先我们保证服务提供者是处于集群模式的,因此我们复制一个ticket-lock-provider-6004,

定义模块名称为:ticket-lock-provider-6005,

改动点一:

application.yml文件中的端口号改为6005,  instance-id 改为 service-lock:6005 ,其他不变

改动点二:

启动类名称改为: TicketProviderApplication_6005

改动点三:

为了方便测试看从是那个服务提供者,在消息中做端口号标记

特别注意:再次提醒一下,讲课中我们是为了演示,所以总是复制相同的模块,但是实际中只需要将一个项目多部署几个即可

3.构建hystrix-turbine-8081监控项目

pom.xml依赖包

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

application.yml文件

server:
port: 8081
context-path: / # 客户端负载均衡配置
eureka:
client:
register-with-eureka: false
service-url:
defaultZone: http://eureka7001.wfd360.com:7001/eureka/,http://eureka7002.wfd360.com:7002/eureka/,http://eureka7003.wfd360.com:7003/eureka/ # 应用名称
spring:
application:
name: turbine # turbine配置
turbine:
app-config: service-lock # 需要监控的应用名称,这里相当于是6004和 6005的应用名称
clusterNameExpression: "'default'" # 集群名字为default

启动类:

package com.wfd360;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration;
import org.springframework.cloud.netflix.turbine.EnableTurbine; /**
* @author 姿势帝-博客园
* @address https://www.cnblogs.com/newAndHui/
* @WeChat 851298348
* @create 07/20 9:42
* @description
*/
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class})
@EnableTurbine
public class HystrixTurbineConsumer_8081 {
public static void main(String[] args) {
SpringApplication.run(HystrixTurbineConsumer_8081.class, args);
}
}

4.测试

启动eureka,服务提供者6004和6005,启动服务消费者80,启动服务监控 Dashboard 8080 和   turbine 8081

关系图:

当消费者80去调用 服务 6004或6005时, turbine 8081就能感知到(感知到的是请求数据,但是不能很好的显示),继而发给 dashboard 8080 进行显示

访问:http://localhost/ticket/list ,看服务消费者是否正常

访问: http://localhost:8081/turbine.stream , 看服务监控是否正常

访问:http://localhost:8080/hystrix.stream 进入仪表盘,并将链接 http://localhost:8081/turbine.stream 放入仪表盘中进行监控

点击:Monitor Stream按钮,结果如下

通过不断测试服务消费者:http://localhost/lock/ticket/10,可以观察图中的曲线变化,

完美!

springCloud课程与代码下载:https://www.cnblogs.com/newAndHui/p/13210228.html

SpringCloud之Hystrix集群监控turbine仪表盘的更多相关文章

  1. Spring Cloud第八篇 | Hystrix集群监控Turbine

    ​ 本文是Spring Cloud专栏的第八篇文章,了解前七篇文章内容有助于更好的理解本文: Spring Cloud第一篇 | Spring Cloud前言及其常用组件介绍概览 Spring Clo ...

  2. SpringCloud之Hystrix集群及集群监控turbine

    目的: Hystrix集群及监控turbine Feign.Hystrix整合之服务熔断服务降级彻底解耦 集群后超时设置 Hystrix集群及监控turbine 新建一个springboot工程mic ...

  3. Turbine——Hystrix集群监控

    上一篇文章讲述了如何利用Hystrix Dashboard去监控断路器的Hystrix command.当我们有很多个服务的时候,这就需要聚合所有服务的Hystrix Dashboard的数据了.这就 ...

  4. Hystrix集群及集群监控turbine

    Hystrix集群及监控turbine 前面Dashboard演示的仅仅是单机服务监控,实际项目基本都是集群,所以这里集群监控用的是turbine. turbine是基于Dashboard的. 先搞个 ...

  5. Spring Cloud :断路器集群监控(Turbine)

    一. 简介      上一篇文章我们已经实现了对单个服务实例的监控,当然在实际应用中,单个实例的监控数据没有多大的价值,我们更需要的是一个集群系统的监控信息,这时我们就需要引入Turbine.Turb ...

  6. Hystrix集群及监控turbine

    Hystrix集群及监控turbine 前面Dashboard演示的仅仅是单机服务监控,实际项目基本都是集群,所以这里集群监控用的是turbine. turbine是基于Dashboard的. 先搞个 ...

  7. 服务容错保护断路器Hystrix之四:断路器监控(Hystrix Dashboard)-turbine集群监控

    turbine 英[ˈtɜ:baɪn] n. 汽轮机; 涡轮机; 透平机; OK,上文我们看了一个监控单体应用的例子,在实际应用中,我们要监控的应用往往是一个集群,这个时候我们就得采取Turbine集 ...

  8. SpringCloud (十) Hystrix Dashboard单体监控、集群监控、与消息代理结合

    一.前言 Dashboard又称为仪表盘,是用来监控项目的执行情况的,本文旨在Dashboard的使用 分别为单体监控.集群监控.与消息代理结合. 代码请戳我的github 二.快速入门 新建一个Sp ...

  9. 断路器Hystrix与Turbine集群监控-Spring Cloud学习第三天(非原创)

    文章大纲 一.Hystrix基础介绍二.断路器Hystrix简单使用三.自定义Hystrix请求命令四.Hystrix的服务降级与异常处理五.Hystrix的请求缓存与请求合并六.Hystrix仪表盘 ...

随机推荐

  1. if语句 条件测试 shell编程之条件语句

    shell 编程之条件语句一.条件测试  ① test命令 测试  ② 文件测试  ③ 整数值比较  ④ 字符串比较  ⑤ 逻辑测试二.if语句的结构  单分支结构  双分支结构  多分支结构三.ca ...

  2. lxml的使用(节点与xpath爬取数据)

    lxml安装 lxml是python下功能很丰富的XML和HTML解析库,性能非常的好,是对libxml3和libxlst的封装.在Windows下载这个库直接使用 pip install lxml ...

  3. java集合(5)-List集合

    序章 List集合是一个元素有序且可以重复的集合,每个元素对应一个索引,类似于数组的方式,默认是按照添加顺序,所以第一次添加元素索引为0,第二次为1.... 一 Java8改进的List接口和List ...

  4. MyEclipse无法打开jsp文件(打开是空白的),但是可以打开java文件

    转载: 解决MyEclipse使用时打开JSP发生"An error has occurred,See error log for more details"错误的解决方法这个问题 ...

  5. PAT乙级:1077 互评成绩计算 (20分)

    PAT乙级:1077 互评成绩计算 (20分) 在浙大的计算机专业课中,经常有互评分组报告这个环节.一个组上台介绍自己的工作,其他组在台下为其表现评分.最后这个组的互评成绩是这样计算的:所有其他组的评 ...

  6. 7.29考试总结(NOIP模拟27)[牛半仙的妹子图·Tree·序列]

    前言 从思路上来讲是比较成功的,从分数上就比较令人失望了. 考场上是想到了前两个题的正解思路,其实最后一个题是半个原题,只可惜是我看不懂题... 这波呀,这波又是 语文素养限制OI水平.. 改题的时候 ...

  7. 第二篇 -- Qt Designer界面介绍

    1. Qt Designer创建界面 2. Qt Designer全局

  8. 福利!Python制作动态字符画(附源码)

    字符画,一种由字母.标点.汉字或其他字符组成的图画.简单的字符画是利用字符的形状代替图画的线条来构成简单的人物.事物等形象,它一般由人工制作而成:复杂的字符画通常利用占用不同数量像素的字符代替图画上不 ...

  9. GC相关问题

    为什么会有新生代? 如果不分代,所有对象全部在一个区域,每次GC都需要对全堆进行扫描,存在效率问题.分代后,可分别控制回收频率,并采用不同的回收算法,确保GC性能全局最优. 为什么新生代会采用复制算法 ...

  10. JMeter Gui – TestElement约定[转]

    转自https://www.cnblogs.com/yigui/p/7615635.html 在编写任何JMeter组件时,必须注意某些特定的约定--如果JMeter环境中正确地运行JMeter组件, ...