【原理+实现】链路追踪系统原理与开源实现

  • 链路追踪的原理
  • 链路追踪的规范
    • OpenTracing
  • Dubbo微服务实现链路追踪的原理【原理+实现】链路追踪系统原理与开源实现_第1张图片
  • 设计
    • 按照Open Tracing规范设计链路数据存储结构
    • 分布式TraceID生成
    • 开发mvc层监控、dubbo层监控、MySQL层或MyBatis层监控等
    • 链路追踪客户端 - 发送追踪数据到Rabbit MQ实现高可用、支持打印TraceID到日志
    • 链路追踪服务端 - Zipkin Server端从Rabbit MQ接收、分析(报警规则)、持久化
    • 链路追踪持久化 - 包括Span信息和日志收集
    • 链路追踪展示UI - 支持查询,自定义仪表盘
    • 健壮性处理 - 默认占用客户端百分之一的内存,发送失败不影响应用,避免追踪系统拖垮应用服务
    • 性能测试
  • 开源实现
    • zipkin/zipkin-server:链路追踪服务端。
    • opentracing/brave/instrument:MVC\dubbo\mysql\rabbitmq\httpclient等链路追踪客户端。
    • opentracing/brave/context:打印TraceID到日志

你可能感兴趣的:(原理)