
Spring Cloud --- Turbine使用
发布日期:2021-05-20 01:12:10
浏览次数:19
分类:精选文章
本文共 1817 字,大约阅读时间需要 6 分钟。
Hystrix + Turbine 集群监控方案
1. 了解背景与意义
在微服务架构中,Hystrix 是一个非常流行的容错和监控工具。然而,Hystrix 的默认监控方式通常适用于单个服务实例。如果要实现多个服务实例的数据聚合监控,就需要借助 Turbine。Turbine 是 Hystrix monitors 的扩展模块,专门用于将多个服务的监控数据进行汇总和展示。
2. Turbine 的核心作用
Turbine 可以将不同服务实例的监控数据进行聚合,例如订单服务 A、服务 B 和服务 C 的数据可以通过 Turbine 实现集中展示。这样,不仅简化了监控操作,还能让运维人员更直观地看到整个服务群的健康状态。
3. 搭建 Turbine 服务(示例)
3.1 新建项目 sp10-turbine
3.2 项目依赖管理
在 pom.xml 中添加以下依赖:
- Spring Cloud Starters Dependencies:如
spring-cloud-starter-netflix-eureka-client
和spring-cloud-starter-netflix-turbine
。 - Spring Boot Starter Test:用于测试环境支持。
3.3 配置文件应用
application.yml:
spring: application: name: turbinserver port: 6001 eureka: client: service-url: http://eureka1:2001/eureka, http://eureka2:2002/eureka cluster-name-expression: new String("default") app-config: order-service
3.4 主程序配置
在 Sp10TurbineApplication.java 中:
package cn.tedu.sp10;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import org.springframework.cloud.client.discovery.EnableDiscoveryClient;import org.springframework.cloud.netflix.turbine.EnableTurbine;@SpringBootApplication@EnableDiscoveryClient@EnableTurbinepublic class Sp10TurbineApplication { public static void main(String[] args) { SpringApplication.run(Sp10TurbineApplication.class, args); }}
4. 数据聚合与监控
4.1 数据路径说明
- 所有监控数据 会被 Turbine 中的数据采集器收集,并按照指定的Cluster Name Expression(如
default
)进行聚合。 - 聚合数据 将按集群名进行存储,便于后续查询和展示。
4.2 测试与验证
- Step 1: 将
order-service
和其他服务注册到 Eureka 服务器。 - Step 2:运行 Turbine 服务,确保其能发现所有服务实例。
- Step 3:通过 Hystrix Dashboard 访问 Turbine 的监控路径(默认是
http://localhost:6001/analyzer
)。 - Step 4:在 Dashboard 中可以看到聚合后的监控数据。
5. 结论
通过以上配置,Turbine 成功实现了多服务实例数据的聚合与展示。这种方式不仅增强了监控的全面性,也为后续的服务扩展打下了坚实基础。
本文通过实际项目配置示范,详细介绍了 Hystrix + Turbine 的集群监控方案,适合需要统一监控多个微服务实例的场景。
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2025年04月14日 22时42分18秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
HTML 表单验证
2019-03-21
mysql时间为0000-00-00 00:00:00时,程序读取错误
2019-03-21
ubuntu System program problem detected
2019-03-21
使用ivx图表组件的经验总结
2019-03-21
17场演讲,500+嘉宾 |「观远2020智能决策峰会暨产品发布会」看点先知道
2019-03-21
专访汇付数据副总裁姜靖宇:“纸上谈兵”时代终结,人工智能将变革第三方支付行业
2019-03-21
张小龙的“败走麦城”
2019-03-21
小程序的生命周期
2019-03-21
Redis学习笔记—单个键管理
2019-03-21
多线程基础部分
2019-03-21
Java学习记录之ArrayList集合
2019-03-21
Shiro 的身份认证
2019-03-21
wordpress架站踩坑过程
2019-03-21
一个简单的游戏框架[汇总]
2019-03-21
免费好用的证件扫描仪-扫描全能王
2019-03-21
自定义拦截器
2019-03-21
Kafka Producer机制优化-提高发送消息可靠性
2019-03-21
面试题5:(事务管理) ACID 是什么?
2019-03-21
10.Mybatis执行流程
2019-03-21
Oracle 一张表里面按照一个字段值将所有的数据按逗号拆分,变为多行数据
2019-03-21