• y109.第六章 微服务、服务网格及Envoy实战 -- 可观测应用之分布式跟踪(二十)


    13.9.1 Envoy Sidecar如何在代理请求的过程中处理跟踪

    • 用户在请求中注入跟踪相关的请求ID, Envoy Sidecar接入后发送至本地服务(local service),如右图中的App

      • Envoy需要把TraceID发给本地服务
      • 还可能会附加其它标头
        在这里插入图片描述
        首先客户端用户再请求中要注入与跟踪相关的请求ID,我们需要在客户端生成请求ID,上图中客户端生成X-B3-Traceid,使用的是B3的traceid格式,这时候envoy就需要把traceid发送给本地服务,App是我们被代理的,envoy是sidecar,前端不管它是什么组件,有可能是front envoy或者其它客户端,它生成了一个请求ID并发给envoy,envoy就需要把这个请求ID传送给其反向代理的本地的App,对于App本身而言它可能还会通过X-Forwarded-For来记录下来究竟前端是谁代理而来,envoy can add headers可以加一些其它的首部,包括X-Forwarded-For,还有X-Forwarded-Client-Cert等等。
    • 本地服务有可能额外需要调用外部的其它服务,其请求通常由Envoy Sidecar上的Egress Listener代理

      • 每个请求都需要其ID,为了保持跟踪,需要复制接收到的TraceID,并附加在请求中,以完成传播

  • 相关阅读:
    S32K144的GPIO使用
    每日三题 9.14
    RFID读写器在物联网中的应用与优势
    零基础学习HTML5(列表、表格、表单)
    Jmeter TCP/UDP测试
    Function 洛谷P1464
    L2-035 完全二叉树的层序遍历(Python)
    Nginx基础教程
    Zookeeper 及 相关概念简介
    第P4周:猴痘病识别
  • 原文地址:https://blog.csdn.net/qq_25599925/article/details/125362461