当前位置: 首页 > news >正文

第十二章 Sleuth分布式请求链路跟踪

Sleuth分布式请求链路跟踪

gitee:springcloud_study: springcloud:服务集群、注册中心、配置中心(热更新)、服务网关(校验、路由、负载均衡)、分布式缓存、分布式搜索、消息队列(异步通信)、数据库集群、分布式日志、系统监控链路追踪。

1. 概述

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

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

2. 搭建链路监控步骤

zipkin搭建:SpringCloud从F版起已不需要自己构建ZipkinServer了,只需调用jar包即可。网址:Central Repository: io/zipkin

  1. 下载zipkin.jar,并启动


请求链路:表示一请求链路,一条链路通过Trace ld唯一标识,Span标识发起的请求信息,各span通过parent id 关联起来。 Trace:类似于树结构的Span集合,表示一条调用链路,存在唯一标识。 span:表示调用链路来源,通俗的理解span就是一次请求信息

  1. 修改cloud-provider-payment8001和cloud-consumer-order80

    pom文件:

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>

application.yaml:

spring:application:#应用名称,也是注册进入注册中的服务名称name: cloud-payment-servicezipkin:base-url: http://localhost:9411sleuth:sampler:#采样/洁介于0到1之间,1则表示全部采货probability: 1

8001controller修改:

@GetMapping("/payment/zipkin")
public String paymentZipkin(){return "hi,zipkin";
}

80controller修改:

@GetMapping("/consumer/payment/zipkin")public String paymentZipkin(){String string=restTemplate.getForObject("http://localhost:8001"+"/payment/zipkin/",String.class);return string;}

测试:

http://www.lryc.cn/news/268914.html

相关文章:

  • EasyExcel多线程批量导出数据,动态表头,静态资源访问
  • 树莓派界面改成中文
  • 软件工程期末复习
  • 【linux】select实现定时器
  • Android 13 - Media框架(28)- MediaCodec(三)
  • Azure 学习总结
  • 数据库是否可以直接作为数据仓库的数据源
  • IntelliJ IDE 插件开发 | (四)开发一个时间管理大师插件
  • 【ChatGPT 默认强化学习策略】PPO 近端策略优化算法
  • 【银行测试】金融银行-理财项目面试/分析总结(二)
  • 张江智荟毁约offer
  • ubuntu 系统终端颜色设置
  • 【Vue】class与style绑定
  • 大厂前端面试题总结(百度、字节跳动、腾讯、小米.....),附上热乎面试经验!
  • EXPLORING DIFFUSION MODELS FOR UNSUPERVISED VIDEO ANOMALY DETECTION 论文阅读
  • 当 ML 遇到 DevOps:如何理解 MLOps
  • vue+element+springboot实现多张图片上传
  • react使用useState更新数组失败
  • 《LIO-SAM阅读笔记》3.后端优化
  • mac下jd-gui提示没有找到合适的jdk版本
  • FlinkSQL窗口实例分析
  • 18-网络安全框架及模型-信息系统安全保障模型
  • Android 提取(备份)apk(安装包)
  • gRPC-Go基础(4)metadata和超时设置
  • 语言模型:从n-gram到神经网络的演进
  • docker compose 部署 grafana + loki + vector 监控kafka消息
  • kubeadm创建k8s集群
  • 鸿蒙开发之android对比开发《基础知识》
  • 2702 高级打字机
  • yolov5旋转目标检测-遥感图像检测-无人机旋转目标检测-附代码和原理