9. Hystrix 指标与 Turbine 和 Consul 的聚合
Turbine(由 Spring Cloud Netflix 项目提供)聚合了多个实例 Hystrix 指标流,因此仪表板可以显示聚合视图。涡轮使用DiscoveryClient
接口来查找相关实例。要将 Turbine 与 Spring Cloud Consul 一起使用,请以类似于以下示例的方式配置 Turbine 应用程序:
pom.xml
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-netflix-turbine</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-consul-discovery</artifactId> </dependency>
请注意,Turbine 依赖项不是Starters。涡轮Starters包括对 Netflix Eureka 的支持。
application.yml
spring.application.name: turbine applications: consulhystrixclient turbine: aggregator: clusterConfig: ${applications} appConfig: ${applications}
这clusterConfig
和appConfig
部分必须匹配,因此将逗号分隔的服务 ID 列表放入单独的配置属性中很有用。
Turbine.java
@EnableTurbine @SpringBootApplication public class Turbine { public static void main(String[] args) { SpringApplication.run(DemoturbinecommonsApplication.class, args); } }