进阶篇丨链路追踪(Tracing)很简单:链路成本指南

广义上的链路成本,既包含使用链路追踪产生的数据生成、采集、计算、存储、查询等额外资源开销,也包含链路系统接入、变更、维护、协作等人力运维成本。为了便于理解,本小节将聚焦在狭义上的链路追踪机器资源成本,人力成本将在下一小节(效率)进行介绍。

链路追踪机器成本的组成结构

链路追踪机器成本主要分为客户端和服务端两大类。链路追踪客户端(SDK/Agent)通常运行在业务进程内部,与业务程序共享 CPU、内存、网络、磁盘等系统资源。链路追踪的客户端开销主要包括链路埋点拦截、链路数据生成与透传、简单的预聚合或压缩/编码等数据处理、数据缓存与上报等。客户端开销通常属于一种隐性开销,短期内不会直接导致资源账单的增长,而是利用业务进程闲置部分的资源。但是,当业务持续增长或者进入峰值周期(如大促),链路追踪消耗的这部分资源最终会引发实际账单的增长。因此,这部分的开销要严格控制在一个合理的水位之内,比如不超过 10%,否则会显著影响业务的正常运转。

链路追踪的服务端机器成本是一种显性的、即时投入的资源成本,也是在评估链路追踪选型方案时(自建、托管)的重要考量因素。链路追踪的服务端通常由网关、消息缓冲、流计算、存储与查询端组成,最为人们所熟知与关注的是链路存储模块,许多热点文章讨论的链路尾部采样(Tail-based Sampling)主要影响的就是链路追踪服务端存储成本。但是,在短周期存储(如 3~7 天)场景下,链路数据接收、缓冲与处理的资源成本占比甚至会超过存储,也是不容忽视的重要组成部分。

此外,还有一块容易忽略的成本就是客户端与服务端之间的网络传输费用。特别是在跨公网传输场景下,不但带宽成本高,而且传输流量会受限,经常需要开启头部采样(Head-based Sampling)来降低链路数据上报量。

近年来,主流开源社区或商业化产品陆续推出了边缘集群解决方案,即在用户网络(VPC)下,部署一套可观测数据统一采集与处理集群,支持多源异构数据标准化、链路数据无损统计、错慢全采等特性,可以进一步降低链路数据上报与持久化存储成本。整

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值