本文内容基于《Spring Cloud微服务实战》,翟永超著。
出现背景
随着业务的发展,系统规模也会变得越来越大,各微服务间的调用关系也变越来越错综复杂。通常一个由客户端发起的请求在后端系统中会经过多个不同的微服务调用来协同产生最后的请求结果,在复杂的微服务架构系统中,几乎每一个前端请求都会形成一条复杂的分布式服务调用链路,在每条链路中任何一个依赖服务出现延迟过高或错误的时候都有可能引起请求最后的失败。
所以,对于每个请求,全链路调用的跟踪可以帮助我们快速发现错误以及监控分析每条请求链路上的性能瓶颈。
简单示例
之前文章创建了两个服务,user-service是服务提供者,user-consumer-feign是基于feign的服务消费者。
- 在两个服务中加入依赖
- 启动服务,通过user-consumer-feign服务调用user-service服务,查看日志
- 解释
- 第一个值:应用的名称;
- 第二个值:Trace ID,用