当前位置:首页 > 科技  > 软件

一文读懂分布式追踪:过去、现在和未来

来源: 责编: 时间:2023-09-21 20:46:39 459观看
导读作为可观测性体系之一的分布式追踪一直是一个备受争议的话题。作为过去每届 全球知名大会 KubeCon 以及国内各种技术峰会所扯的老牌技术,曾一度被寄予厚望,被认为会彻底改变系统观测认知。然而,五年已经过去了。。。一、

作为可观测性体系之一的分布式追踪一直是一个备受争议的话题。作为过去每届 全球知名大会 KubeCon 以及国内各种技术峰会所扯的老牌技术,曾一度被寄予厚望,被认为会彻底改变系统观测认知。然而,五年已经过去了。。。xqT28资讯网——每日最新资讯28at.com

一、什么是 Distributed Ttracing ?

通常来讲,分布式跟踪是一种在分布式系统和微服务中传播的请求,生成有关这些请求的高质量数据,并使其可供分析的方法。xqT28资讯网——每日最新资讯28at.com

xqT28资讯网——每日最新资讯28at.com

分布式追踪(Distributed Tracing)是一种用于监测分布式系统中请求流程的技术。它可以追踪一个请求在不同的微服务中的执行情况,并将这些信息整合到一个完整的请求链路图中,以便于监测和调试。分布式追踪通常通过在请求的不同阶段插入唯一的标识符(例如 Trace ID 和 Span ID 等)来实现。这些标识符随着请求的传递,会在不同的微服务之间传递,用于标记请求的不同阶段,从而构建完整的请求链路图。xqT28资讯网——每日最新资讯28at.com

分布式跟踪对于监控、调试和优化分布式软件架构至关重要,特别是在动态微服务架构中,因为它有助于团队更快地了解每个微服务的性能。xqT28资讯网——每日最新资讯28at.com

xqT28资讯网——每日最新资讯28at.com

二、分布式追踪的工作原理

分布式跟踪的工作原理是跟踪通过分布式系统的请求流,并在请求通过各种服务和组件时收集有关请求每个步骤的数据。 然后,该数据用于构建请求过程(从初始请求到最终响应)的完整画面。xqT28资讯网——每日最新资讯28at.com

为了实现这一点,分布式跟踪通常依赖于使用唯一标识符,例如跟踪 ID 和跨度 ID,这些标识符附加到每个请求,并在请求遍历不同服务时通过系统传递。 这些标识符允许跟踪系统将请求的每个步骤与整个请求链关联起来,即使它通过不同的服务和组件也是如此。xqT28资讯网——每日最新资讯28at.com

在典型的分布式跟踪系统中,通常由三个主要组件组成:追踪代理(Tracing Agent)、追踪收集器(Tracing Collector)和追踪存储(Tracing Storage)三个主要组件协同工作来跟踪请求xqT28资讯网——每日最新资讯28at.com

1、追踪代理

作为在分布式系统中的每个服务或组件上运行的软件组件,追踪代理主要负责收集有关通过它们的请求的数据。 追踪代理通常将跟踪和跨度 ID 添加到请求标头,并将此信息发送到追踪收集器。xqT28资讯网——每日最新资讯28at.com

2、追踪收集器

追踪收集器组件从跟踪代理接收追踪数据并将其聚合成完整的请求跟踪,然后负责关联不同服务和组件之间的追踪和跨度 ID,以构建请求旅程的完整画面。xqT28资讯网——每日最新资讯28at.com

3、追踪存储

追踪存储组件为存储追踪数据以供以后检索和分析的组件,主要用于诊断问题、优化性能并深入了解分布式系统的整体行为。xqT28资讯网——每日最新资讯28at.com

xqT28资讯网——每日最新资讯28at.com

三、为什么我们的系统需要分布式追踪?

分布式追踪在实际业务场景中通常是独一无二的,因为它专注于请求作为可观察性的单元。在监控和度量平台中,通常以组件(如服务和主机)作为被观察的基本单位。这些平台可以提供有关整个组件随时间的行为的信息,例如在特定时间范围内该服务的健康状况、吞吐量和错误率。xqT28资讯网——每日最新资讯28at.com

相比之下,日志的被观察单位是事件。例如,当代码执行期间出现事件时,可以打印一些信息。这些事件是开发人员在编写代码时主观定义的。然而,日志的挑战在于它们通常是脱节的,每个组件都单独打印自己的日志消息,没有简单的方法将它们连接在一起,以便形成有意义的整体视图。xqT28资讯网——每日最新资讯28at.com

相对地,分布式追踪的被观察单位是单个请求,因为它在多个组件之间遍历。这使得我们能够对整个分布式系统进行查询,并了解在一个复杂、互联的系统中发生了什么。这种可观察性的单元使分布式追踪成为了一种强大的工具,可以帮助开发人员快速诊断问题、优化性能和改进可维护性。xqT28资讯网——每日最新资讯28at.com

通常而言,借助分布式追踪,我们能够实现:xqT28资讯网——每日最新资讯28at.com

1、快速诊断

分布式应用程序通常由多个服务和组件组成,当出现问题时,需要快速定位问题所在,并诊断问题的根本原因。分布式追踪可以帮助开发人员快速诊断问题,因为它提供了详细的请求链路信息,可以直接指出问题所在。xqT28资讯网——每日最新资讯28at.com

2、改进可维护性

分布式追踪可以提供应用程序的全面视图,包括不同服务和组件之间的相互作用。这有助于开发人员更好地理解应用程序的结构和功能,并改进其可维护性。xqT28资讯网——每日最新资讯28at.com

3、理解系统

现代应用程序通常由多个服务和组件组成,这些服务和组件之间的相互作用非常复杂。分布式追踪可以提供完整的请求链路信息,并帮助开发人员了解系统中不同组件之间的相互作用,从而更好地理解系统的行为和性能。xqT28资讯网——每日最新资讯28at.com

xqT28资讯网——每日最新资讯28at.com

一句话总结:xqT28资讯网——每日最新资讯28at.com

“分布式跟踪的基本情况在于,围绕请求的这种方向最接近最终用户的体验。因此,对于我们如何检查和排除分布式架构的故障来说,这也是最直观的。”xqT28资讯网——每日最新资讯28at.com

四、今天,分布式追踪所面临的问题?

在实际的业务场景中,分布式追踪在企业的落地及应用往往因为各种各样的因素导致面临各种问题,具体如下:xqT28资讯网——每日最新资讯28at.com

1、实施艰难

实施分布式追踪可能会面临一些挑战。为了实现分布式追踪,我们需要对代码进行修改和发布。虽然代码修改是实现可观察性的共同要求,但是分布式追踪的挑战在于,为了获得分布式追踪,每个服务或组件都需要进行工具化,否则跟踪将中断。xqT28资讯网——每日最新资讯28at.com

这意味着在实施分布式追踪之前,我们需要对每个服务或组件进行仪器化,以便收集有关请求的跟踪信息,并将其传递给追踪系统。这可能需要一些额外的工作,包括修改现有代码、添加新的跟踪代码和重新部署应用程序。此外,由于每个服务或组件都需要进行仪器化,这可能会导致一些复杂性和维护成本的增加xqT28资讯网——每日最新资讯28at.com

2、价值削弱

尽管分布式跟踪在分布式系统中的可观察性和问题排查方面有很大的优势,但在某些情况下,分布式跟踪的价值可能会被削弱,最大的障碍在于高昂的成本。实施分布式跟踪需要对每个服务和组件进行工具化,这可能会导致额外的成本和复杂性。如果在实施分布式跟踪之前没有考虑好成本和收益,那么分布式跟踪的价值可能会被削弱xqT28资讯网——每日最新资讯28at.com

第二个在于团队的技术储备,团队的技术储备对实施分布式追踪的影响是十分重要的。实施分布式追踪需要对分布式系统进行仪器化,以便收集请求的跟踪信息,并将其传递给追踪系统。这需要对现有代码进行修改,并添加新的跟踪代码,并且需要在不影响系统功能的情况下进行部署。如果团队缺乏实施分布式追踪所需的技术储备,那么实施分布式追踪可能会变得困难。xqT28资讯网——每日最新资讯28at.com

3、复杂的抽样决策

在实施分布式追踪时,抽样决策是一个重要的考虑因素。由于分布式追踪会产生大量的跟踪数据,因此需要采用抽样技术来减少数据量,以避免存储和处理方面的问题。但是,抽样决策的复杂性会影响实施分布式追踪的效果,主要涉及抽样决策的准确性、复杂性以及一致性。xqT28资讯网——每日最新资讯28at.com

抽样决策的准确性直接影响到跟踪数据的质量。如果抽样决策过于简单或不准确,那么可能会忽略重要的请求路径,导致无法正确诊断问题。xqT28资讯网——每日最新资讯28at.com

抽样决策的复杂性也会影响到实施分布式追踪的效果。如果抽样决策过于复杂,那么可能会增加实施分布式追踪的难度,导致实施时间和成本的增加。xqT28资讯网——每日最新资讯28at.com

在分布式系统中,不同服务和组件可能会使用不同的抽样策略,这可能会导致跟踪数据的不一致性。如果不同组件使用不同的抽样策略,那么可能会导致跟踪数据的缺失或重叠,从而影响跟踪数据的质量。xqT28资讯网——每日最新资讯28at.com

xqT28资讯网——每日最新资讯28at.com

当然,除了上面核心的因素外,还有其他可观因素,此处咱不赘述。xqT28资讯网——每日最新资讯28at.com

五、未来,分布式追踪如何发力?

随着分布式系统的普及和应用场景的增多,分布式追踪的未来发展前景非常广阔。分布式追踪将成为分布式系统可观测性的核心工具之一,并且将在以下方面发挥更大的作用:xqT28资讯网——每日最新资讯28at.com

1、自动化:随着人工智能和机器学习技术的发展,分布式追踪将越来越自动化。例如,可以使用机器学习来自动识别异常行为和性能问题,并提供自动化的问题排查和修复建议。xqT28资讯网——每日最新资讯28at.com

2、效率:分布式追踪将成为分布式系统管理的重要工具之一。通过对系统的全面监控和诊断,分布式追踪能够提高系统的效率和稳定性,并减少故障排查的时间和成本。xqT28资讯网——每日最新资讯28at.com

3、安全:分布式追踪将成为安全领域的重要工具之一。通过监控和分析请求的路径和数据流,分布式追踪能够识别潜在的安全漏洞和攻击,并提供及时的响应和修复建议。xqT28资讯网——每日最新资讯28at.com

4、标准化:分布式追踪将越来越标准化,以便不同供应商和厂商的系统可以无缝地集成和互操作。例如,OpenTelemetry 就是一个流行的开放标准,用于实现分布式追踪和度量。xqT28资讯网——每日最新资讯28at.com

总之,分布式追踪的未来发展前景非常广阔。随着技术的进步和需求的增长,分布式追踪将成为分布式系统可观察性的核心工具之一,并在自动化、效率、安全和标准化等方面发挥更大的作用。xqT28资讯网——每日最新资讯28at.com

本文链接:http://www.28at.com/showinfo-26-10890-0.html一文读懂分布式追踪:过去、现在和未来

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: Python数据结构:解锁高效编程

下一篇: 面试官:你工作了3年了,这道算法题你都答不出来?

标签:
  • 热门焦点
  • 6月iOS设备性能榜:M2稳居榜首 A系列只能等一手3nm来救

    没有新品发布,自然iOS设备性能榜的上榜设备就没有什么更替,仅仅只有跑分变化而产生的排名变动,毕竟苹果新品的发布节奏就是这样的,一年下来也就几个移动端新品,不会像安卓厂商,一
  • 量化指标是与非:挽救被量化指标扼杀的技术团队

    作者 | 刘新翠整理 | 徐杰承本文整理自快狗打车技术总监刘新翠在WOT2023大会上的主题分享,更多精彩内容及现场PPT,请关注51CTO技术栈公众号,发消息【WOT2023PPT】即可直接领取
  • 大厂卷向扁平化

    来源:新熵作者丨南枝 编辑丨月见大厂职级不香了。俗话说,兵无常势,水无常形,互联网企业调整职级体系并不稀奇。7月13日,淘宝天猫集团启动了近年来最大的人力制度改革,目前已形成一
  • ESG的面子与里子

    来源 | 光子星球撰文 | 吴坤谚编辑 | 吴先之三伏大幕拉起,各地高温预警不绝,但处于厄尔尼诺大“烤”之下的除了众生,还有各大企业发布的ESG报告。ESG是“环境保
  • 网红炒股不为了赚钱,那就是耍流氓!

    来源:首席商业评论6月26日高调宣布入市,网络名嘴大v胡锡进居然进军了股市。在一次财经媒体峰会上,几个财经圈媒体大佬就“胡锡进炒股是否知道认真报道”展开讨论。有
  • 超级标准版旗舰!iQOO 11S全球首发iQOO超算独显芯片

    上半年已接近尾声,截至目前各大品牌旗下的顶级旗舰都已悉数亮相,而下半年即将推出的顶级旗舰已经成为了数码圈爆料的主流,其中就包括全新的iQOO 11S系
  • 3699元!iQOO Neo8 Pro顶配版今日首销:1TB UFS 4.0同价位唯一

    5月23日,iQOO推出了全新的iQOO Neo8系列,包含iQOO Neo8和iQOO Neo8 Pro两个版本,其中标准版搭载高通骁龙8+,而Pro版更是首发搭载了联发科天玑9200+旗舰
  • Windows 11发布,微软一改往常对老机型开放的态度

    距离 Windows 11 发布已经过去一周,在过去一周里,很多数码爱好者围绕其对 Android 应用的支持、对老机型的升级问题展开了激烈讨论。与以往不同的是,在这次大
  • 苹果MacBook Pro 2021测试:仍不支持平滑滚动

    据10月30日9to5 Mac 消息报道,苹果新的 14 英寸和 16 英寸 MacBook Pro 2021 上市后获得了不错的评价,亮点包括行业领先的性能,令人印象深刻的电池续航,精美丰
Top