使用简略总结:
一、Turbine & Hystrix-Dashboard (熔断器可视化)
1.Hystrix-Dashboard 熔断器可视化界面
能够实时获取Hystrix熔断器配置的hystrix.command对应的fallback方法的调用情况
所需依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId>
</dependency>
启动类注解
@EnableHystrixDashboard
2.Turbine
汇集各个微服务Hystrix熔断器fallback方法信息监控信息,并将聚合后的信息提供给Hystrix Dashboard来集中展示和监控
所需依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-turbine</artifactId>
</dependency>
所需注解
启动类注解 @EnableTurbine
所需配置信息(yml)
turbine:
app-config: xxx #Eureka Server注册serviceId,聚合微服务的监控数据 大小写均可
cluster-name-expression: new String("default") # 设置监控的表达式,通过此表达式表示要获取监控信息名称 不可缺少
二、Sleuth & Zipkin(服务链跟踪)
通过各个Zipkin-Client向Zipkin-Server发送请求数据做到服务链跟踪,同一请求入口可构成一条服务链(同一traceid)
1.Zipkin-Server服务端直接下载对应的官方jar包直接运行(端口9411)
2.Zipkin-Client
所需依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
不需要注解
所需配置信息(yml) 注意空格距离!
spring
#服务链跟踪
zipkin:
base-url: http://localhost:9411 #Zipkin-Server地址
sleuth:
sampler:
probability: 1.0 # 0.0 - 1.0 根据客户端性能与信息综合设置 测试使用1.0
3.Zipkin-Server界面的依赖链路形成一条链,需要微服务之间通过FeignClient进行调用或者通过RestTemplate(使用Spring容器中注入的RestTemplate才可以)