Zipkin开源分布式跟踪系统

Zipkin是一个分布式跟踪系统,能够在微服务架构中收集有关性能延迟等问题,然后定位延迟所在部分。

一个REST请求会连接多个微服务来完成完整业务。也就是说对于入口的一个API调用可能需要有多个后台微服务协同完成,链路上任何一个调用超时或出错都可能造成前端请求的失败。服务的调用链也会越来越长,并形成一个树形的调用链。


Zipkin的UI会展现一个请求所经历的树形跟踪图,能够发现问题所在部分,能够根据应用类型,跟踪长度,元注释和时间戳过滤和排序所有跟踪,能够看到每个部分占据全部跟踪时间的百分比。

支持多种语言包括JavaScript,Python,Java, Scala, Ruby, C#, Go等。其中Java由多种不同的库来支持。

OpenZipkin · A distributed tracing system