SpringCloud.H-Sleuth分布式请求链路跟踪
# SpringCloud.H-Sleuth分布式请求链路跟踪
笔记日期:2020.5.20
# 1. 概念 官网 (opens new window)
# 1. 为什么出现? 解决了?
- 问题
在微服务框架中,一个由客户端发起的请求在后端系统中会经过多个不同的服务节点调用来协调产生最后的请求结果,每一个前段请求都会形成一条复杂的分布式服务调用链路,链路中的任何一环出现高延迟或错误都会引起整个请求最后的失败。
# 2. 是什么?
- SpringCloud Sleuth提供了一套完整的服务跟踪的解决方案
- 在分布式系统中提供追踪解决方案并且兼容支持了zipkin
- Sleuth 负责收集整理,Zipkin负责展现。
# 2. 环境搭建
# 1. zipkin 下载地址 (opens new window)
SpringCloud从F版起已不需要自己构建Zipkin Server了,只需调用jar包
安装: java -jar zipkin-server-2.12.9-exec.jar
访问: http://localhost:9411/zipkin/
# 2. 服务搭建
- 依赖
<!--包含了sleuth+zipkin 分布式链路跟踪-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>
1
2
3
4
5
2
3
4
5
- 配置
spring:
zipkin: # 配置zipkin
base-url: http://localhost:9411
sleuth:
simple:
# 采样率介于0~1之间,1表示全部采集
probability: 1
1
2
3
4
5
6
7
2
3
4
5
6
7
- controller
/**
* sleuth分布式链路跟踪测试
* @return
*/
@GetMapping(value = "/zipkin")
public String paymentZipkin(){
return "hi, i am paymentZipkin server fall back.,welcome to chggx, O(∩_∩)O哈哈~";
}
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
测试
访问上面地址
http://localhost/consumer/payment/zipkin
上次更新: 2023/04/10, 23:45:17