【第二十六章】 hystrix-dashboard + turbine
一、使用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的更多相关文章
- Gradle 1.12用户指南翻译——第二十六章. War 插件
其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Github上的地址: https://g ...
- “全栈2019”Java多线程第二十六章:同步方法生产者与消费者线程
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...
- “全栈2019”Java第二十六章:流程控制语句中循环语句do-while
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- SpringBoot | 第二十六章:邮件发送
前言 讲解了日志相关的知识点后.今天来点相对简单的,一般上,我们在开发一些注册功能.发送验证码或者订单服务时,都会通过短信或者邮件的方式通知消费者,注册或者订单的相关信息.而且基本上邮件的内容都是模版 ...
- UNP学习笔记(第二十六章 线程)
线程有时称为轻权进程(lightweight process) 同一进程内的所有线程共享相同的全局内存.这使得线程之间易于共享信息,然后这样也会带来同步的问题 同一进程内的所有线程处理共享全局变量外还 ...
- 第二十六章 hystrix-dashboard + turbine
一.使用turbine的意义 引入多个hystrix stream: 1.使用hystrix-dashboard的可以添加多个stream的功能 图中添加的两个stream会在真正monitor的时候 ...
- 【WPF学习】第二十六章 Application类——应用程序的生命周期
在WPF中,应用程序会经历简单的生命周期.在应用程序启动后,将立即创建应用程序对象,在应用程序运行时触发各种应用程序事件,你可以选择监视其中的某些事件.最后,当释放应用程序对象时,应用程序将结束. 一 ...
- python3 第二十六章 - 内置函数之Number相关
数学函数 函数 返回值 ( 描述 ) 实例 abs(x) 返回数字的绝对值,如abs(-10) 返回 10 print(abs(-10)) =======输出:====== 10 ceil(x) 返回 ...
- 《Linux命令行与shell脚本编程大全》第二十六章 一些有意思的脚本
26.1 发送消息 26.1.1 功能分析 1.确定系统中都有谁 $who 给出的信息包括用户名 用户所在终端 用户登入系统的时间 2.启用消息功能 用户可以禁止别人给我发消息,所以需要先检查一下是否 ...
随机推荐
- CentOS7 firewall防火墙配置笔记
开启端口 # firewall-cmd --zone=public --add-port=/tcp --permanent 命令含义: --zone #作用域 --ad ...
- sql server中的工作线程
/*在SQL SERVER 2005 及以后版本中, 使用'MAXworker thread' 来配置可用的线程数,默认设置为0 ,即自动控制线程数 计算最大工作线程数: 对于32 位系统:逻辑CPU ...
- Celery配置Redis数据库保存Return结果状态
使用windows版本 1.于GitHUB下载https://github.com/ServiceStack/redis-windows Window版本,到路径: 2. 运行路径下:D:\redis ...
- elasticsearch 6.0java api的使用
elasticsearch 6.0 中java api的使用 1:使用java api创建elasticsearch客户端 package com.search.elasticsearch; impo ...
- shell脚本变量$#,$*,$$,$@,$0,$1,$2,$?的含义
本文转录:https://blog.csdn.net/kejiaming/article/details/51859503 参数说明: $# 是传给脚本的参数个数 $ 是脚本本身的名字 $ 是传递给该 ...
- [LeetCode] 443. String Compression_Easy tag:String
Given an array of characters, compress it in-place. The length after compression must always be smal ...
- Java: Best Way to read a file
经常在各种平台的online test里面不熟悉STDIN, STOUT,下面举个例子: Input Format There are three lines of input: The first ...
- AHB-Lite简介
AHB总线实现了简单的基于burst的传输,数据总线带宽可配置32-1024bit.可以实现简单的fixed pipeline在address/control phase和 data phase之间. ...
- LR和SVM的相同和不同
之前一篇博客中介绍了Logistics Regression的理论原理:http://www.cnblogs.com/bentuwuying/p/6616680.html. 在大大小小的面试过程中,经 ...
- hive支持sql大全(收藏版)
hive操作数据库还是比较方便的,因此才会有hbase与hive整合.下面我们hive的强大功能吧.为了增强阅读性,下面提几个问题: 1.hive支持哪些运算符? 2.hive是否支持左右连接? 3. ...