• SkyWalking快速上手(八)——sleuth+zipkin和SkyWalking的区别


    使用Sleuth和Zipkin进行分布式链路追踪

    1. 介绍

    分布式系统中,由于服务之间的调用关系复杂,很难准确地追踪一个请求在系统中的整个流程。为了解决这个问题,可以使用分布式链路追踪工具,如Sleuth和Zipkin。

    Sleuth是Spring Cloud提供的一个分布式追踪解决方案,它通过在请求中添加唯一标识和跟踪信息,来记录请求在系统中的传递过程。而Zipkin是一个开源的分布式追踪系统,它可以收集和展示分布式系统中的请求跟踪数据。

    本文将介绍如何使用Sleuth和Zipkin进行分布式链路追踪。

    2. 准备工作

    首先,我们需要在项目中引入Sleuth和Zipkin的依赖。在pom.xml文件中添加以下依赖:

    <dependency>
        <groupId>org.springframework.cloudgroupId>
        <artifactId>spring-cloud-starter-sleuthartifactId>
    dependency>
    
    <dependency>
        <groupId>org.springframework.cloudgroupId>
        <artifactId>spring-cloud-starter-zipkinartifactId>
    dependency>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    3. 配置Sleuth和Zipkin

    在项目的配置文件中,添加以下配置:

    spring:
      sleuth:
        sampler:
          probability: 1.0 # 设置采样率,1.0表示全部采样
      zipkin:
        base-url: http://localhost:9411 # 设置Zipkin服务器的地址
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    4. 编写代码

    在需要进行链路追踪的服务中,添加@EnableSleuth注解开启Sleuth功能。例如,在Spring Boot应用中,可以在启动类上添加@EnableSleuth注解:

    @SpringBootApplication
    @EnableSleuth
    public class Application {
        public static void main(String[] args) {
            SpringApplication.run(Application.class, args);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    5. 查看链路追踪数据

    启动应用后,访问应用的接口,可以看到请求的链路追踪数据。打开浏览器,访问http://localhost:9411/zipkin/,可以看到Zipkin的Web界面。

    在Zipkin界面的查询框中输入相关信息,即可查看请求的链路追踪数据,包括请求的耗时、调用的服务等信息。

    结论

    通过使用Sleuth和Zipkin,我们可以方便地进行分布式系统的链路追踪。通过查看链路追踪数据,我们可以了解请求在系统中的传递过程,帮助我们定位和解决问题。

    希望本文对你理解和使用Sleuth和Zipkin有所帮助!

    Sleuth + Zipkin vs SkyWalking

    目录

    介绍

    在分布式系统中,为了解决服务之间复杂的调用关系和请求追踪的问题,我们可以使用分布式链路追踪工具。本文将介绍两种常见的分布式链路追踪工具:Sleuth + Zipkin和SkyWalking。

    Sleuth + Zipkin

    Sleuth

    Sleuth是Spring Cloud提供的一个分布式追踪解决方案。它通过在请求中添加唯一标识和跟踪信息,来记录请求在系统中的传递过程。Sleuth可以与Spring Cloud的其他组件无缝集成,如Eureka、Ribbon等。

    Zipkin

    Zipkin是一个开源的分布式追踪系统。它可以收集和展示分布式系统中的请求跟踪数据。Zipkin的架构包括Collector、Storage和UI三个组件,其中Collector用于接收和存储跟踪数据,Storage用于持久化存储数据,UI用于展示和查询数据。

    SkyWalking

    架构

    SkyWalking是Apache基金会的开源项目,也是一个分布式系统的观测和分析平台。它通过在系统中的各个组件中插入代理,来收集和分析请求的跟踪数据。SkyWalking的架构包括Agent、Collector、Storage和UI四个组件。

    特点

    • 支持多种语言:SkyWalking可以监控多种语言的应用程序,包括Java、.NET、Node.js等。
    • 强大的可视化能力:SkyWalking提供了丰富的可视化能力,可以展示请求的调用关系、耗时、错误等信息。
    • 分布式事务追踪:SkyWalking支持分布式事务的追踪和分析,可以帮助我们定位和解决分布式事务相关的问题。

    对比

    下面是Sleuth + Zipkin和SkyWalking的一些主要区别:

    功能Sleuth + ZipkinSkyWalking
    架构Sleuth + Zipkin架构简单,适合小型项目SkyWalking架构复杂,适合大型项目
    语言支持主要支持Java支持多种语言,如Java、.NET、Node.js等
    可视化能力Zipkin提供了基本的可视化能力,但相对较简单SkyWalking提供了强大的可视化能力,可以展示丰富的监控信息
    分布式事务追踪相对简单,可以追踪分布式事务的调用关系和耗时支持分布式事务的追踪和分析,可以帮助解决分布式事务相关的问题

    结论

    Sleuth + Zipkin和SkyWalking都是常见的分布式链路追踪工具。Sleuth + Zipkin适合小型项目,它的架构简单,集成方便。而SkyWalking适合大型项目,它提供了强大的可视化能力和分布式事务追踪功能。

    根据项目的需求和规模,选择合适的分布式链路追踪工具是非常重要的。希望本文对你理解和选择合适的分布式链路追踪工具有所帮助!

  • 相关阅读:
    llama2-13的训练模型流程咨询
    [树形dp]Orgrimmar 2022杭电多校第8场 1008
    笔试选择题-图
    windows@按流量计费网络设置@电脑风扇降噪的可能方法
    2024 IDM最新破解版及软件介绍
    Nodejs安装及npm配置(超详细)
    开启可视化金融时代!菊风联合助推山东农信视频银行项目
    SpringBoot的异常处理方式
    【全面】CSS3新增了哪些新特性?
    二代水务系统架构设计分享——DDD+个性化
  • 原文地址:https://blog.csdn.net/yangsimo/article/details/133064362