使用 Turbine 和 Consul 进行 67. Hystrix metrics 聚合
Turbine(由 Spring Cloud Netflix 项目提供)聚合多个实例 Hystrix metrics 流,因此仪表板可以显示聚合视图。 Turbine 使用DiscoveryClient
接口查找相关实例。要将 Turbine 与 Spring Cloud Consul 一起使用,请以类似于以下示例的方式配置 Turbine application:
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 依赖项不是 starter。 turbine starter 包括对 Netflix Eureka 的支持。
application.yml.
spring.application.name: turbine
applications: consulhystrixclient
turbine:
aggregator:
clusterConfig: ${applications}
appConfig: ${applications}
clusterConfig
和appConfig
部分必须 match,因此将 comma-separated 服务 ID 列表放入单独的 configuration property 中非常有用。
Turbine.java.
@EnableTurbine
@SpringBootApplication
public class Turbine {
public static void main(String[] args) {
SpringApplication.run(DemoturbinecommonsApplication.class, args);
}
}