一、使用turbine的意义

引入多个hystrix stream:

1、使用hystrix-dashboard的可以添加多个stream的功能

图中添加的两个stream会在真正monitor的时候分开展示,这样的话,假设两个stream都引用了同一个方法a,那么方法a会分开展示两次,如下:

实际上我们只需要统计a的处理能力,与谁调用无关,所以希望在整个dashboard下只有一个a的展示,那么我们就需要通过turbine将这些所有a的展示汇聚起来。

注意:

  • turbine的汇聚也是实时的

2、使用turbine进行汇聚

turbine介绍:附7 turbine

turbine部署:第二章 部署war包到tomcat

二、总体图

前提:

  • 假设有两个服务A/B分别布在两台机器上(这里为了简单,使用一个服务myboot来代替),A、B都访问myboot2的两个接口getHotelInfo和getHotelInfo2(这两个接口也是commandKey的名字);
  • 同时在一台机器上部署了turbine.war。

测试:

  • A、B对两个接口getHotelInfo和getHotelInfo2能否分别聚合。

三、操作

1、分别将myboot项目在两台机器上启动

  • 会用到的命令:scp myboot.jar root@192.22.22.22:~/zjg/service(将本地的myboot.jar拷贝到远程机器的~/zjg/service目录下)

2、启动myboot2.jar

3、配置tomcat的webapps下的turbine/WEB-INF/classes/config.properties

InstanceDiscovery.impl=com.netflix.turbine.discovery.ConfigPropertyBasedDiscovery
#cluster
turbine.aggregator.clusterConfig=default
#turbine.aggregator.clusterConfig=myboot
turbine.instanceUrlSuffix=:8001/hystrix.stream
turbine.ConfigPropertyBasedDiscovery.default.instances=192.11.11.11,192.22.22.22

说明:配置了一个cluster为default,原因及其他配置见 附7 turbine

4、启动turbine

  • 如果需要tomcat的关闭过程可能不会关闭干净,使用ps -ef | grep tomcat,之后进行kill就好。

5、分别启动两台机器上的hystrix-dashboard

6、浏览器输入

  • "192.11.11.11:7979/hystrix-dashboard"并添加"192.11.11.11:8001/hystrix.stream"进行monitor
  • "192.22.22.22:7979/hystrix-dashboard"并添加"192.22.22.22:8001/hystrix.stream"进行monitor
  • "192.11.11.11:7979/hystrix-dashboard"(重新打开一个页面)并添加"192.11.11.11:8080/turbine/turbine.stream"进行monitor

7、使用swagger分别访问myboot调用myboot2的两个接口getHotelInfo和getHotelInfo2,查看3个monitor页面,会发现turbine.stream会是前两个hystrix.stream的聚合结果

四、turbine结果

【第二十六章】 hystrix-dashboard + turbine的更多相关文章

  1. Gradle 1.12用户指南翻译——第二十六章. War 插件

    其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...

  2. “全栈2019”Java多线程第二十六章:同步方法生产者与消费者线程

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  3. “全栈2019”Java第二十六章:流程控制语句中循环语句do-while

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...

  4. SpringBoot | 第二十六章:邮件发送

    前言 讲解了日志相关的知识点后.今天来点相对简单的,一般上,我们在开发一些注册功能.发送验证码或者订单服务时,都会通过短信或者邮件的方式通知消费者,注册或者订单的相关信息.而且基本上邮件的内容都是模版 ...

  5. UNP学习笔记(第二十六章 线程)

    线程有时称为轻权进程(lightweight process) 同一进程内的所有线程共享相同的全局内存.这使得线程之间易于共享信息,然后这样也会带来同步的问题 同一进程内的所有线程处理共享全局变量外还 ...

  6. 第二十六章 hystrix-dashboard + turbine

    一.使用turbine的意义 引入多个hystrix stream: 1.使用hystrix-dashboard的可以添加多个stream的功能 图中添加的两个stream会在真正monitor的时候 ...

  7. 【WPF学习】第二十六章 Application类——应用程序的生命周期

    在WPF中,应用程序会经历简单的生命周期.在应用程序启动后,将立即创建应用程序对象,在应用程序运行时触发各种应用程序事件,你可以选择监视其中的某些事件.最后,当释放应用程序对象时,应用程序将结束. 一 ...

  8. python3 第二十六章 - 内置函数之Number相关

    数学函数 函数 返回值 ( 描述 ) 实例 abs(x) 返回数字的绝对值,如abs(-10) 返回 10 print(abs(-10)) =======输出:====== 10 ceil(x) 返回 ...

  9. 《Linux命令行与shell脚本编程大全》第二十六章 一些有意思的脚本

    26.1 发送消息 26.1.1 功能分析 1.确定系统中都有谁 $who 给出的信息包括用户名 用户所在终端 用户登入系统的时间 2.启用消息功能 用户可以禁止别人给我发消息,所以需要先检查一下是否 ...

随机推荐

  1. 从0开始做一个的Vue图片/ 文件选择(上传)组件[基础向]

    原文:http://blog.csdn.net/sinat_17775997/article/details/58585142 之前用Vue做了一个基础的组件 vue-img-inputer ,下面就 ...

  2. Elasticsearch教程-从入门到精通(转)

    原文:http://mageedu.blog.51cto.com/4265610/1714522?utm_source=tuicool&utm_medium=referral 各位运维同行朋友 ...

  3. 64位windows 7下配置TortoiseGit(转)

    原文:http://our2848884.blog.163.com/blog/static/146854834201152325233854/ 最近感觉自己电脑上的代码太乱了,东一块.西一块……于是决 ...

  4. oracle(五)tkprof 使用 transient kernal profile 侧面 轮廓

    1.show parameter sql_trace value是false表示系统当前不会产生trace文件 2.使产生trace文件 alter session set sql_trace = t ...

  5. Shell初学(三)传参

    一. 脚本代码:test.sh echo "Shell 传递参数实例!"; echo "执行的文件名:$0"; echo "第一个参数为:$1&quo ...

  6. mysql5.6编译遇到错误

    -- Could NOT find Curses (missing:  CURSES_LIBRARY CURSES_INCLUDE_PATH)CMake Error at cmake/readline ...

  7. OC 手势可能出现的问题

    oc手势有分別是 Tap(点一下).Pinch(二指往內或往外拨动).Rotation(旋转).Swipe(滑动,快速移动).Pan (拖移,慢速移动)以及 LongPress(长按). UITapG ...

  8. literallycanvas的简介

    LiterallyCanvas是什么 Literally Canvas是一个可扩展的开源(BSD许可)HTML5绘图组件,可以用于网页中插入画图板,类似于windows自带的画图板.可以用可视化工具绘 ...

  9. 2017php经典面试题

    1.PHP语言的一大优势是跨平台,什么是跨平台?一.PHP基础: PHP的运行环境最优搭配为Apache+MySQL+PHP,此运行环境可以在不同操作系统(例如windows.Linux等)上配置,不 ...

  10. 解决svn log显示no author,no date的方法之一

    https://blog.csdn.net/feixiang_song/article/details/37809341 关于mac自带的svn的配置请参考该博客:点击打开链接 问题: 在linux执 ...