微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Jaeger Uber 的分布式追踪系统

程序名称:Jaeger

授权协议: MIT

操作系统: 跨平台

开发语言: Google Go

Jaeger 介绍

Jaeger是Uber的分布式跟踪系统。

大多数现有的Zipkin兼容仪表库支持概率采样,但他们希望在初始化时配置采样率。这种方法在大规模使用时导致几个严重问题:

  • 给定的服务几乎没有洞察采样率对跟踪后端的总体流量的影响。

  • 在Uber,商业交通展示强烈的每日季节性; 更多的人在高峰时段乘坐。固定采样概率对于非高峰业务来说太低,而对于高峰业务又太高。

Jaeger客户端库中的轮询功能旨在解决这些问题。通过将关于适当采样策略的决定移动到跟踪后端,我们免除服务开发人员猜测适当的采样率。这还允许后端在流量模式改变时动态地调整采样率。下图显示了从收集器到客户端库的反馈循环。

当前的Jaeger架构:在Go中实现的后端组件,支持OpenTracing标准的四种语言的客户端库,基于React的Web前端以及基于Apache
Spark
的后处理和聚合数据管道。

Jaeger 官网

https://github.com/jaegertracing/jaeger

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐