1. 课程导论:为什么需要 Jaeger 慢查询定位?SLI 口径优化在基础设施中的重要性

1.1 慢查询:分布式系统中的“隐形杀手”

在微服务架构中,一次用户请求往往需要跨越数十甚至上百个服务节点。任何一个节点的响应延迟,都可能被放大为终端用户的感知劣化。传统逐台服务器排查的方式,在面对分布式链路时,如同“大海捞针”。

核心痛点: 当用户反馈“页面加载慢”时,你无法快速回答——
· 慢在哪个服务?
· 慢在哪个 API 或数据库查询?
· 是网络开销、CPU 争抢,还是锁等待?

Jaeger 作为 CNCF 毕业的分布式追踪系统,通过 Trace(追踪)和 Span(跨度)模型,能够精确还原请求的全链路耗时分布。本课程将重点讲解如何利用 Jaeger 定位“慢查询”——即那些耗时异常、拖累整体性能的 Span。

分布式慢查询定位流程(Jaeger 视角) 用户请求 API 网关 服务 A 服务 B 数据库(慢) Jaeger 收集器 定位慢 Span → 根因 💡 红色节点表示慢 Span(数据库查询耗时 2.3s) Jaeger 通过 Trace ID 串联所有 Span,快速定位瓶颈

1.2 SLI 口径:基础设施可观测性的“度量基石”

SLI(Service Level Indicator) 是衡量服务质量的量化指标。在基础设施层面,常见的 SLI 包括:

SLI 类别 典型指标 常见口径定义
延迟 请求响应时间(P50/P95/P99) 从请求到达网关到返回完整响应的耗时
错误率 HTTP 5xx 占比 / 业务错误码占比 错误请求数 ÷ 总请求数 × 100%
吞吐量 QPS / TPS / RPS 单位时间内成功处理的请求数
饱和度 CPU 使用率 / 内存使用率 / 连接池占用 当前使用量 ÷ 总容量 × 100%
⚠️ 口径不一致的陷阱:
同一个“延迟”指标,A 团队从客户端埋点采集(包含网络延迟),B 团队从服务端日志采集(仅计算业务逻辑耗时)。两个口径相差 30% 以上,导致 SLO 评估完全失效。

1.3 为什么 SLI 口径优化是基础设施的“必选项”?

基础设施 SLI 口径的准确性,直接决定了 SLO(服务等级目标)的可信度。口径优化不是“锦上添花”,而是可观测性建设的基石。

  • 消除数据孤岛: 统一 Jaeger、Prometheus、Grafana 等工具之间的指标定义,避免“各说各话”。
  • 提升告警准确率: 口径偏差会导致误告警或漏告警,优化后告警命中率可提升 40% 以上。
  • 支撑容量规划: 只有口径一致的延迟和吞吐量数据,才能用于准确的资源扩缩容决策。
  • 降低排障 MTTR: 当 Jaeger 慢查询定位与 SLI 口径对齐后,从发现异常到定位根因的时间可缩短 50%。
SLI 口径优化前后对比 ❌ 优化前:口径混乱 Jaeger: 服务端耗时 Prom: 客户端耗时 延迟 P99: 1.2s 延迟 P99: 1.8s 口径偏差 50% → SLO 无法对齐 ✅ 优化后:口径统一 统一口径:服务端耗时(不含网络) 延迟 P99: 1.2s(Jaeger & Prom 一致) 口径一致 → SLO 可信,告警准确

1.4 本课程的核心价值

本课程将围绕 Jaeger 慢查询定位 和 基础设施 SLI 口径优化 两条主线,提供可落地的实战方案:

  • 第 1-5 章: Jaeger 核心概念、部署与数据采集最佳实践。
  • 第 6-15 章: 慢查询定位方法论,包括 Span 分析、火焰图、服务依赖图等。
  • 第 16-22 章: SLI 口径定义、对齐与自动化校验。
  • 第 23-30 章: 综合案例:从 Jaeger 慢查询到 SLI 口径优化,再到 SLO 达成的完整闭环。
📌 学习建议: 建议先掌握 Jaeger 的基本操作(第 1-5 章),再深入 SLI 口径优化部分。每章末尾的“动手练习”请务必完成,以巩固实战能力。