[toc]

一、简介

1. 为什么要用这个技术

在微服务框架中,一个由客户端发起的请求在后端系统中会经过多个不同的的服务节点调用来协同产生最后的请求结果,每一个前段请求都会形成一条复杂的分布式服务调用链路,链路中的任何一环出现高延时或错误都会引起整个请求最后的失败。
image.png

2. sleuth是什么

官方地址:https://github.com/spring-cloud/spring-cloud-sleuth
Spring Cloud Sleuth提供了一套完整的服务跟踪的解决方案,在分布式系统中提供追踪解决方案并且兼容支持了zipkin

二、下载zipkin

zipkin和sleuth之间的区别,可以理解为zipkin为可视化展示,sleuth为收集数据。

1. 下载zipkin的jar包文件

下载地址:https://repo1.maven.org/maven2/io/zipkin/zipkin-server/

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

2. jar包运行

启动jar包

java -jar zipkin-server-2.12.9-exec.jar

image.png

3. 浏览器访问

http://localhost:9411/zipkin/
image.png

三、模块实现zipkin

代码搭建在之前feign篇有过:https://liudongdong.top/archives/springcloud%E5%8D%81%E4%BA%94%E5%BE%AE%E6%9C%8D%E5%8A%A1%E4%B9%8Bopenfeign%E6%9C%8D%E5%8A%A1%E4%B9%8B%E9%97%B4%E8%B0%83%E7%94%A8

1. 修改cloud_learn_users_feign_8004

1. pom添加sleuth依赖

<!--包含了sleuth+zipkin-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-zipkin</artifactId>
        </dependency>

2. yaml添加zipkin配置

  zipkin:
    base-url: http://localhost:9411
  sleuth:
    sampler:
    probability: 1

image.png

2. 修改cloud_learn_store_7001

1. pom添加sleuth依赖

<!--包含了sleuth+zipkin-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-zipkin</artifactId>
        </dependency>

2. yaml添加zipkin配置

  zipkin:
    base-url: http://localhost:9411
  sleuth:
    sampler:
    probability: 1

四、测试

地址:localhost:8004/consumer/payment/get/1
类型:GET
结果:
image.png

image.png

image.png

image.png

image.png

Q.E.D.


只有创造,才是真正的享受,只有拚搏,才是充实的生活。