73. 通过 Turbine 和 Consul 进行 HystrixMetrics 聚合

Turbine(由 Spring Cloud Netflix 项目提供)汇总了多个实例 HystrixMetrics 流,因此仪表板可以显示汇总视图。 Turbine 使用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 依赖项不是启动器。Turbine 启动器包括对 Netflix Eureka 的支持。

application.yml.

spring.application.name: turbine
applications: consulhystrixclient
turbine:
  aggregator:
    clusterConfig: ${applications}
  appConfig: ${applications}

clusterConfigappConfig部分必须匹配,因此将以逗号分隔的服务 ID 列表放入单独的配置属性中很有用。

Turbine.java.

@EnableTurbine
@SpringBootApplication
public class Turbine {
    public static void main(String[] args) {
        SpringApplication.run(DemoturbinecommonsApplication.class, args);
    }
}