蚂蚁金服分布式链路跟踪组件 SOFATracer 总览 | 剖析
2019新春支付宝红包技术大揭秘在线峰会将于03-07日开始,点击 这里 报名届时即可参与大牛互动。 SOFA Scalable Open Financial Architecture 是蚂蚁金服自主研发的金融级分布式中间件,包含了构建金融级云原生架构所需的各个组件,是在金融场景里锤炼出来的最佳实践。 SOFATracer 是一个用于分布式系统调用跟踪的组件,通过统一的 TraceId 将调用链路中的各种网络调用情况以日志的方式记录下来,以达到透视化网络调用的目的,这些链路数据可用于故障的快速发现,服务治理等。 本文为《剖析 | SOFATracer 框架》第一篇。《剖析 | SOFATracer 框架》系列由 SOFA 团队和源码爱好者们出品,项目代号: SOFA:TracerLab/ ,文章尾部有参与方式,欢迎同样对源码热情的你加入。 0. 前言 在单体应用时代,我们不需要花费时间去关心调用链路这个东西。 但是链路跟踪不仅仅是在分布式场景下才会有,即使是单体应用,同样也会存在调用链路。 例如,我们把应用中的每个服务接口作为一个链路节点,那么从请求进来到返回响应,把这个过程中多历经的所有的方法接口串联起来,就能组成一条完整的链路,如下图所示: 对于单体应用而言,如果访问一个资源没有成功,那么我们可以很快的锁定是哪一台机器,然后通过查询这台机器上的日志就能定位问题。