分布式服务跟踪:SpringCloud Sleuth

2018-07-12  本文已影响59人  没睡醒的鱼

背景

随着业务的发展,系统规模会变得越来越大,各微服务间的调用关系变得越来越复杂。通常一个由客户端发起的请求在后端系统中会经过多个不同的微服务调用来协调产生最后的请求结果,在复杂的微服务架构中,几乎每一个前端请求都会形成一条复杂的分布式服务调用链路,在每条链路中任何一个依赖服务出现延迟过高或错误的时候都有可能引起请求最后的失败。这时候,对于每个请求全链路调用的跟踪就显得很重要

案例准备

现在有一个微服务应用:trace-1,实现了一个REST接口/trace-1,调用该接口后将触发对trace-2应用的调用

我们首先创建一个应用trace-1并实现/trace-1接口: trace-1
接下来创建trace-2服务,实现了一个REST接口/trace-2供trace-1调用: trace-2

实现跟踪

在trace-1和trace-2中添加依赖: 依赖
此时再发送请求到trace-1,控制台输出如下所示: 控制台输出
这里面有几个重要的参数:

跟踪原理

主要包含下面两个关键点:

上一篇下一篇

猜你喜欢

热点阅读