您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。[2023中国DevOps社区峰会·武汉站]:刘征-APM分布式追踪实践不只是埋点 - 发现报告
当前位置:首页/行业研究/报告详情/

刘征-APM分布式追踪实践不只是埋点

AI智能总结
查看更多
刘征-APM分布式追踪实践不只是埋点

刘征 中国DevOps社区组织者 中国DevOps社区峰会·武汉 中国DevOps社区峰会·武汉 日程 中国DevOps社区峰会·武汉 •APM在分布式系统中的作用 •采样的开销和成本 •新版可观测性记分卡 •问答时间 中国DevOps社区峰会·武汉 中国DevOps社区峰会·武汉 为什么使用开源埋点? 中国DevOps社区峰会·武汉 •私有技术封闭特定的概念 •追踪链中统一的唯一标识符 •和其他OSS的融合 互操作性 •换追踪工具时,必须重写追踪代码 •OpenTelemetry的收集器组件可以兼容多个后端工具套件 可移植性 •利用现有可用OSS生态系统可以快速活的系统的有用信息 生态系统 •通过服务网格工具的可追踪能力,而不需要任何编码工作 隐式可见性 APM在分布式系统中的作用 管理和优化应用系统的性能基线 中国DevOps社区峰会·武汉 中国DevOps社区峰会·武汉 APM分布式追踪的主基调 中国DevOps社区峰会·武汉 •分布式追踪是一种通过追踪数据分析、监控分布式系统的工具,追踪数据表示 请求在系统中的流动过程。 •分布式追踪与你的编程语言、运行时、部署环境无关,几乎可以用于所有类型的应用或服务。 •分布式追踪改善了团队的协作能力,缩短了检测、解决应用程序性能问题的时间。 采样的开销和成本 合理评估和规避的方案 中国DevOps社区峰会·武汉 中国DevOps社区峰会·武汉 中国DevOps社区峰会·武汉 分布式追踪的第一原则 尽量不产生副作用 应用开销1:延迟增加和缓解方案 中国DevOps社区峰会·武汉 创建、结束span,添加标记、日志这些事件的发生都会产生延迟 高性能追踪器只在应用程序的线程上执行绝对必要的工作,并将剩余工作转移到后台线程中完成 优化线程调度 控制span的解析度;运用可重复使用的缓冲区和无锁结构结合 优化埋点的粒度 综合运用以上优化最佳事件后,可以将影响的数量级降到不可测量 降级影响度 应用开销2:吞吐量占用和缓解方案 中国DevOps社区峰会·武汉 固定的基础设施在固定时间内能处理的请求数量是有限的 •利用最少的链接次数,争取在1分钟内发送出 span数据 减少链接次数 移动app考虑到内存和电量的因素,尽量用长链接,以流的方式传输压缩后的数据 移动App长链接/压缩 Google用16/1的采样率让吞吐量和延迟的开销都在可接受的误差范围内 设置合理采样率 基础设施的成本 中国DevOps社区峰会·武汉 •网络传输成本: •网络位置--私有数据中心,公有云(VPC内外,跨区域,跨互联网) •span数据发送成本和应用计算成本的对比 •应用程序运行位置和span数据目标存储的位置 •存储成本: •云存储的成本=容量x时长 •GoogleDapper案例: •1/1024的采样率是进程默认的采样率,在存储前在降低数量10倍 •追踪数据存储的Region区域范围内,降低网络成本 •从在Big-Query中分别维护主机和服务两个索引,减少为一个二合一的符合索引 •使成本和价值趋于一致 在明确的目标和成本内发掘价值 中国DevOps社区峰会·武汉 聚焦价值 采样子集数据中能发现一条有意义的样本,就可以用来定位和解决应用故障和性能问题 取得全量数据的成本可能高于运行应用程序本身 承担成本 坚守分布式追踪完整性的底线 中国DevOps社区峰会·武汉 难点1:分布式云原生应用中,离散式采样数据点的协同难 难点2:span数据必须在离开数据中心或者VPC前存储到持久化存储中 合理运用采样策略,平衡成本和价值 预先采样(heard-based)前置的无差别采样 可以根据预期动态调整采样率 中国DevOps社区峰会·武汉 基于响应采样(tail-based)根据响应特征,请求结果或者结果包含的信息点作为数据丢弃与否的决策因子 优化集中采样结果的决策,先集中一部分,在做出采样决策,然后回传采样结果 新版可观测性记分卡 用相对较少的信号量就能理解生产系统的行为 中国DevOps社区峰会·武汉 中国DevOps社区峰会·武汉 术语“可观测性”来自控制理论 中国DevOps社区峰会·武汉 •根据系统对外部的输出信息推断系统的内部状态。 •被动型控制 •主动型控制 模型:Closedloopfeedbackcontrol 理解、干预–管理系统性能 中国DevOps社区峰会·武汉 Why feedback?1.不确定 2.不稳定 3.常扰动 4.高效率 可观测性解决方案的三个设计目标 中国DevOps社区峰会·武汉 •核心设计目标: 1.解释每个事务/交易:覆盖极端罕见错误,感知最小客户群体,不漏报任何有价值的事件 2.免于维度问题:支持复杂的横向故障排查,需要大量高维度非聚合数据点支持,平衡搜索性能和存储成本的矛盾 3.成本与业务价值成正比:在实施成本动态增长的确定性下,确保业务价值的物有所值 “可观测性三大支柱”的致命弱点 中国DevOps社区峰会·武汉 指标 Metric 日志Log 分布式追踪 Trace 解释单(每)个事务 ✅ ✅ ❌ 免于维度问题 ❌ ✅ ✅ 成本与业务量成正比 ✅ ❌ ✅ 三根管道,而非支柱 中国DevOps社区峰会·武汉 •非三个独立工具,而是用于收集、管理遥测数据的三种技术手段 •工具实现者:将组织数据方式的权衡交给用户 •工具用户:从目标业务价值出发,评估工具功能和性能,为自己的选择买单。 •改善性能基线 •恢复性能基线 (回归后) 目标 活动 •度量性能对用户的影响 •解释度量结果所表达的性能差异 可观测性的终极目标和活动 中国DevOps社区峰会·武汉 更新版可观测性平衡记分卡 中国DevOps社区峰会·武汉 *统计的保真度的高低 *元数据维度的多少 *存储空间容量的多少 *可用时间序列的长短 *提供上下文 *按影响排序 *可自动关联 信息质量操作体验 ElasticAPM参考架构 中国DevOps社区峰会·武汉 ElasticAPM支持OpenTemetry 中国DevOps社区峰会·武汉 中国DevOps社区峰会·武汉 中国DevOps社区峰会·武汉 关注社区公众号了解更多活动

你可能感兴趣

hot

7-2 字节跳动埋点成本治理实践 - 肖茜文

金融
DataFunSummit2022:数据治理在线峰会2022-09-15
hot

刘征-用AI加速度DevOps的实现步伐

电子设备
2023中国DevOps社区峰会·武汉站2023-04-14
hot

刘征-用可观测性之眼洞悉复杂生产系统

电子设备
2023年中国DevOps社区广州峰会2023-12-12
hot

知乎埋点体系建设与治理

文化传媒
DataFunSummit2023:数据治理在线峰会2023-07-13