前言:不断学习就是程序员的宿命。

一、概述

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

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

  官网地址:https://spring.io/projects/spring-cloud-sleuth

 SpringCloud(H版)学习---分布式请求链路追踪

完整请求链:一条链路通过Trace Id唯一标识,Span标识发起的请求信息,各Span通过parent id关联

 精简官方原理图: 一条链路通过Trace Id唯一标识,Span标识发起的请求信息,各Span通过Parent Id关联

SpringCloud(H版)学习---分布式请求链路追踪

 

整个链路的依赖关系如下:

SpringCloud(H版)学习---分布式请求链路追踪

 

 Trace:类似于树结构的Span集合,表示一条调用链路,存在唯一标识

span:表示调用链路来源,通俗的理解span就是一次请求信息

二、链路监控搭建

  简单来说,Sleuth负责收集整理,zipkin负责展现。

1、下载安装zipkin

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

  下载地址:https://dl.bintray.com/openzipkin/maven/io/zipkin/java/zipkin-server/

  运行zipkin:zipkin-server-2.12.9-exec.jar

SpringCloud(H版)学习---分布式请求链路追踪

 2、测试

2.1、pom添加sleuth依赖

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

相关文章:

  • 2021-12-24
  • 2021-12-05
  • 2021-04-02
  • 2021-06-18
  • 2021-07-24
  • 2021-08-25
猜你喜欢
  • 2021-11-10
  • 2021-12-20
  • 2021-06-20
  • 2022-12-23
  • 2021-12-23
  • 2022-02-22
  • 2022-12-23
相关资源
相似解决方案