默认端口:9411

1. 概述

SpringCloud提供了一套完整的服务跟踪的解决方案,在分布式系统中提供追踪解决方案并且兼容支持了zipkin

image.png
image.png

2. Sleuth流程

image.png

3. 调用链路

Trace ——— 类似于树结构的Span集合,表示一条调用链路,存在唯一表示TraceId Span ——— 类似于树结构的节点,表示调用链路来源,通俗的理解Span就是一次请求信息,存在唯一标识Span Id和父标识Parent Id

image.png
image.png

4. 案例

SpringCloud 从F版起已不需要自己构建Zipkin Server了,只需调用jar包即可

4.1下载地址

https://dl.bintray.com/openzipkin/maven/io/zipkin/java/zipkin-server/zipkin-server-2.12.9-exec.jar

4.2 运行jar

image.png

4.3 Dashboard

http://localhost:9411/zipkin

image.png

4.4 依赖(调用方与被调用方一样)

  1. <!-- sleuth + zipkin -->
  2. <dependency>
  3. <groupId>org.springframework.cloud</groupId>
  4. <artifactId>spring-cloud-starter-zipkin</artifactId>
  5. </dependency>

4.5 YAML配置(调用方与被调用方一样)

spring:
    zipkin:
    base-url: http://localhost:9411
  sleuth:
    sampler:
      # 采样率值介于0到1之间,1则表示全部采集,数值越大性能开销越大
      probability: 1

4.6 测试

  • 80调用几次8001后zipkin才会出现服务名

image.png

  • 调用链路、耗时

image.png

  • 依赖关系分析

image.png