单体应用追踪
介绍
在分布式系统中,单体应用追踪(Monolithic Application Tracing)是指对单个服务内部的请求调用链路进行监控和分析的技术。尽管单体应用的所有功能模块通常运行在同一个进程中,但复杂的业务逻辑可能涉及多层调用(如控制器→服务层→数据库)。Zipkin可 以帮助开发者可视化这些调用关系,定位性能瓶颈或错误源头。
为什么单体应用也需要追踪?
即使是非分布式架构,以下场景仍需要追踪:
- 分析请求在应用内部的流转路径
- 测量各模块的耗时分布
- 诊断跨线程的调用问题
核心概念
追踪模型
Zipkin的追踪模型基于以下几个关键组件:
- Trace:代表一个完整的请求链路(如图中的
A
) - Span:链路中的单个工作单元(如图中的
B
,C
,D
),包含:- 开始/结束时间
- 标签(如HTTP方法、状态码)
- 父子关系