微服务链路追踪-SkyWalking

本文探讨了在微服务架构中链路追踪的重要性,介绍了SkyWalking作为APM工具的特性,如与Zipkin的对比,以及如何在Java项目中部署和使用SkyWalking,包括本地开发、jar包部署、Docker部署以及Kubernetes集成。还涵盖了SkyWalking的日志收集配置方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、为什么需要链路追踪?

由于微服务化项目拆分,会导致系统服务间调用链路愈发复杂,此时,一个前端请求可能最终需要调用多个后端服务才能完成实现。

微服务间调用链路可能是这样:

当整个请求不可用出现问题时,我们是没有办法判断请求是由哪个服务端引发问题,这时我们需要浏览多个服务端的日志去快速定位故障点,找到调用异常的服务,跟进一个请求到底有哪些服务参与,参与顺序是怎样,从而达到每个请求的步骤清晰可见并且如果有新同事加入,不能快速的知道自己所负责的服务在哪一环等等,于是就有了分布式系统调用跟踪的需求。

链路追踪已经不是什么新兴技术和概念了,其可使用组件有很多,比如:sleuth、Zipkin、阿里鹰眼、大众点评Cat、SkyWalkIng等等…

这些组件有一个共同的名字: APM 工具 (Application Performance Management)即应用性能监控工具。

二、链路追踪组件之SkyWalking

(1)是什么是SkyWalking

 SkyWalking是中国人吴晟(华为)开源的一款APM工具,现在已属于Apache旗下开源项目, 是一个观察性分析平台和应用性能管理系统。提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。

(2)SkyWalkIng与ZipKin对比

至于为什么要采用此二者对比,因为我目前就用过这两个,zipkin是最早接触spring cloud项目用过,目前呢,是在学习SkyWalkIng。

ZipKin:Twitter公司开源的一个分布式追踪工具,被Spring Cloud Sleuth集成,使用广泛而稳定。

ZIpKIn优缺点:

优点:轻量级,springcloud集成,使用人数多,成熟。

缺点:侵入性,功能简单,欠缺APM报表能力(能力弱)。

Sleuth的作用是在系统中自动埋点并把数据发送给zipkin,zipkin的作用是存储这些数据并展现。

SkyWalking:中国人吴晟(华为)开源的一款分布式追踪,分析,告警的工具,现已属于Apache旗下开源项目。

SkyWalking 优缺点:

优点:多种监控手段多语言自动探针,Java,.NET Core 和 Node.JS,轻量高效,不需要大数据,模块化,UI、存储、集群管理多种机制可选,支持告警,社区活跃。

缺点:较为新兴,成熟度不够高。

(3) SkyWalking 组成部分

Probes:探针,探针因使用的语言不同而不通,收集数据并且格式化为skywalking所需的格式。

Platform backend :平台后端,对应于zipkin server,可以集群部署,聚合,分析,将数据展示在UI中。

Storage:存储,可扩展的存储,可以使es,H2,MySQL集群默认 h2。

UI :丰富的可视化功能,提供身

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值