为什么需要链路追踪
什么是链路追踪
微服务架构是通过业务来划分服务的,使用 REST 调用。对外暴露的一个接口,可能需要很多个服务协同才能完成这个接口功能,如果链路上任何一个服务出现问题或者网络超时,都会形成导致接口调用失败。随着业务的不断扩张,服务之间互相调用会越来越复杂。

%title插图%num
随着服务的越来越多,对调用链的分析会越来越复杂。
面对以上情况,我们就需要一些可以帮助理解系统行为、用于分析性能问题的工具,以便发生故障的时候,能够快速定位和解决问题,这就是所谓的 APM(应用性能管理)。
什么是 SkyWalking
目前主要的一些 APM 工具有: Cat、Zipkin、Pinpoint、SkyWalking;Apache SkyWalking 是观察性分析平台和应用性能管理系统。提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。

%title插图%num

Skywalking Agent: 使用 JavaAgent 做字节码植入,无侵入式的收集,并通过 HTTP 或者 gRPC 方式发送数据到 SkyWalking Collector。
SkyWalking Collector: 链路数据收集器,对 agent 传过来的数据进行整合分析处理并落入相关的数据存储中。
Storage: SkyWalking 的存储,时间更迭,SW 已经开发迭代到了 6.x 版本,在 6.x 版本中支持以 ElasticSearch(支持 6.x)、Mysql、TiDB、H2、作为存储介质进行数据存储。
UI: Web 可视化平台,用来展示落地的数据。
## SkyWalking 功能特性
多种监控手段,语言探针和服务网格(Service Mesh)
多语言自动探针,Java,.NET Core 和 Node.JS
轻量高效,不需要大数据
模块化,UI、存储、集群管理多种机制可选
支持告警
优秀的可视化方案
————————————————

原文链接:https://blog.csdn.net/qq_41153167/article/details/86490404