链路追踪技术介绍|学习笔记

本文涉及的产品
应用实时监控服务-可观测链路OpenTelemetry版,每月50GB免费额度
简介: 快速学习链路追踪技术介绍

开发者学堂课程【全面讲解 Spring Cloud Alibaba 技术栈(知识精讲+项目实战)第三阶段链路追踪技术介绍】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/685/detail/11897


链路追踪技术介绍

内容介绍

一、前言

二、简介

三、常见的链路追踪技术


一、前言

首先看一个问题,在浏览器上有一个网址,这个网址是发往网关的,然后请网关转到订单微服务上,进行一个下单操作,接下来运行时会发现一直在转圈,用了4.15秒才完成,下单确实成功了。

但是再来一次也还是用了很长时间,由此可见在下单的过程中肯定是出现问题了,所以问题就是:该怎样排查这些问题?

此时先把链路画出来,先画出客户端,再画出微服务,依次是网关、订单、商品微服务。

image.png

有客户端发送请求到达网关,网关会把请求转发到订单微服务,订单微服务会调动商品微服务进行商品信息的查询,商品信息查询后会把结果返回,订单微服务拿到返回结果会进行下单操作,会把结果交给网关,再返回客户端。


二、简介

耗时的点到底发生在哪里?如何定位呢?

--debug 生产、日志

链路追踪:GPS

在大型系统的微服务化构建中,一个系统被拆分成了许多模块。这些模块负责不同的功能,组合成系统,最终可以提供丰富的功能。在这种架构中,一次请求往往需要涉及到多个服务。

互联网应用构建在不同的软件模块集上,这些软件模块,有可能是由不同的团队开发、可能使用不同的编程语言来实现、有可能布在了几千台服务器,横跨多个不同的数据中心,也就意味着这种架构形式也会存在一些问题:

·如何快速发现问题?

·如何判断故障影响范围?

·如何梳理服务依赖以及依赖的合理性?

·如何分析链路性能问题以及实时容量规划?

image.png

路径如图所示


三、常见的链路追踪技术

• cat

由大众点评开源,基于 Java 开发的实时应用监控平台,包括实时应用监控,业务监控。

集成方案是通过代码埋点的方式来实现监控,比如:拦截器,过滤器等。对代码的侵入性很大,集成成本较高。风险较大。

•zipkin

由 Twitter 公司开源,开放源代码分布式的跟踪系统,用于收集服务的定时数据,以解决微服务架构中的延迟问题,

包括:

数据的收集、存储、查找和展现。该产品结合 spring-cloud-sleuth 使用较为简单,集成很方便,但是功能较简单。

• pinpoint

Pinpoint 是韩国人开源的基于字节码注入的调用链分析,以及应用监控分析工具。特点是支持多种插件,UI 功能强大,接入端无代码侵入。

• skywalking

SkyWalking 是本土开源的基于字节码注入的调用链分析,以及应用监控分析工具。

特点是支持多种插件,UI 功能较强,接入端无代码侵入。目前已加入 Apache 孵化器。

•Sleuth

SpringCloud 提供的分布式系统中链路追踪解决方案。

注意:

SpringCloud alibaba 技术栈中并没有提供自己的网关,我们可以采用 Sleuth 来做链路追踪解决方案

相关实践学习
基于OpenTelemetry构建全链路追踪与监控
本实验将带领您快速上手可观测链路OpenTelemetry版,包括部署并接入多语言应用、体验TraceId自动注入至日志以实现调用链与日志的关联查询、以及切换调用链透传协议以满足全链路打通的需求。
分布式链路追踪Skywalking
Skywalking是一个基于分布式跟踪的应用程序性能监控系统,用于从服务和云原生等基础设施中收集、分析、聚合以及可视化数据,提供了一种简便的方式来清晰地观测分布式系统,具有分布式追踪、性能指标分析、应用和服务依赖分析等功能。 分布式追踪系统发展很快,种类繁多,给我们带来很大的方便。但在数据采集过程中,有时需要侵入用户代码,并且不同系统的 API 并不兼容,这就导致了如果希望切换追踪系统,往往会带来较大改动。OpenTracing为了解决不同的分布式追踪系统 API 不兼容的问题,诞生了 OpenTracing 规范。OpenTracing 是一个轻量级的标准化层,它位于应用程序/类库和追踪或日志分析程序之间。Skywalking基于OpenTracing规范开发,具有性能好,支持多语言探针,无侵入性等优势,可以帮助我们准确快速的定位到线上故障和性能瓶颈。 在本套课程中,我们将全面的讲解Skywalking相关的知识。从APM系统、分布式调用链等基础概念的学习加深对Skywalking的理解,从0开始搭建一套完整的Skywalking环境,学会对各类应用进行监控,学习Skywalking常用插件。Skywalking原理章节中,将会对Skywalking使用的agent探针技术进行深度剖析,除此之外还会对OpenTracing规范作整体上的介绍。通过对本套课程的学习,不止能学会如何使用Skywalking,还将对其底层原理和分布式架构有更深的理解。本课程由黑马程序员提供。
相关文章
|
6月前
|
监控 数据可视化 Java
【JAVA】分布式链路追踪技术概论
【JAVA】分布式链路追踪技术概论
84 2
|
4月前
|
存储 监控 开发者
分布式链路监控系统问题之系统拆分后链路追踪技术的问题如何解决
分布式链路监控系统问题之系统拆分后链路追踪技术的问题如何解决
|
6月前
|
存储 消息中间件 Java
【分布式链路追踪技术】sleuth+zipkin
【分布式链路追踪技术】sleuth+zipkin
82 2
|
7月前
|
监控 数据可视化 Java
【JAVA】分布式链路追踪技术概论
skywalking拥有更加的强大和细粒度的图形监控界面。
106 2
|
消息中间件 存储 缓存
RocketMQ 5.0 可观测能力升级: Tracing 链路追踪介绍|学习笔记
快速学习 RocketMQ 5.0 可观测能力升级: Tracing 链路追踪介绍
836 0
RocketMQ 5.0 可观测能力升级: Tracing 链路追踪介绍|学习笔记
|
消息中间件 存储 缓存
Tracing 链路追踪 |学习笔记
快速学习 Tracing 链路追踪
433 0
Tracing 链路追踪 |学习笔记
|
存储 运维 监控
业务全链路追踪最佳实践|学习笔记
快速学习业务全链路追踪最佳实践
业务全链路追踪最佳实践|学习笔记
|
存储 SpringCloudAlibaba 监控
07、SpringCloud之链路追踪sleuth集成zipkin学习笔记
07、SpringCloud之链路追踪sleuth集成zipkin学习笔记
07、SpringCloud之链路追踪sleuth集成zipkin学习笔记
|
数据采集 存储 监控
如何理解分布式链路追踪技术
什么是链路追踪?微服务引发了怎样的问题?
344 0
如何理解分布式链路追踪技术
|
Java 微服务
SpringCloud学习笔记(七、服务链路追踪)
SpringCloud学习笔记(七、服务链路追踪)
169 0
SpringCloud学习笔记(七、服务链路追踪)

热门文章

最新文章

下一篇
DataWorks