JAVA全系列 教程
3762个小节阅读:7089.8k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
Spring Cloud Sleuth实现了一种分布式的服务链路跟踪解决方案,通过使用Sleuth可以让我们快速定位某个服务的问题。简单来说,Sleuth相当于调用链监控工具的客户端,集成在各个微服务上,负责产生调用链监控数据。
注意:
Spring Cloud Sleuth只负责产生监控数据,通过日志的方式展示出来,并没有提供可视化的UI界面。
通过这些Sleuth 的特殊标记,我们就可以根据时间顺序,将一次服务请求经过的调用节点都梳理出来,这样你就能迅速发现报错信息发生在哪个阶段。这是使用Zipkin 生成的链路追踪的可视化信息。你可以看出,每个服务调用都以时间先后顺序规整好了,红色的部分就是发生线上Exception的服务。
除了Trace和Span之外,Sleuth还有一个特殊的数据结构,叫做Annotation,被用来记录一个具体的“事件”。我把 Sleuth所支持的四种事件做成了一个表格,你可以参考一下。
在这里我举个例子,来帮你理解怎么使用这四种事件。
流程:
如果你用服务B的ss减去 sr,你就可以得到请求在服务B阶段的处理时间。如果用服务B的sr减去服务A的cs,就可以得到服务A到服务B之间的网络调用延迟时间。如果用服务A的 cr减去 cs,就可以得到当次请求从发起到结束所花费的总时间。
1.Spring Cloud Sleuth只负责_____数据。
A 服务熔断
B 负载均衡
A 注册中心
B 负载均衡
C 产生监控数据
D 链路追踪
2.Spring Cloud Sleuth是通过____来实现链路追踪。
A 打标记
B 打日志
C 保存数据库
D 以上都是错误
1=>C 2=>A