SpringCloud 2020版本教程4:使用spring cloud sleuth+zipkin实现链路追踪

56 篇文章 3146 订阅

Spring Cloud Sleuth+zipkin实现链路追踪

Spring Cloud Sleuth 主要功能就是在分布式系统中提供追踪解决方案,并且兼容支持了 zipkin,你只需要在pom文件中引入相应的依赖即可。

微服务架构上通过业务来划分服务的,通过REST调用,对外暴露的一个接口,可能需要很多个服务协同才能完成这个接口功能,如果链路上任何一个服务出现问题或者网络超时,都会形成导致接口调用失败。随着业务的不断扩张,服务之间互相调用会越来越复杂。

本小节教程将讲述如何使用sleuth和zipkin来构建微服务的链路追踪。

下载zipkin server并启动

下载地址如下,并启动:

curl -sSL https://zipkin.io/quickstart.sh | bash -s
java -jar zipkin.jar

访问zipkin的ui 界面,地址为localhost:9411

改造工程

在三个工程provider\consumer\gateway的pom文件加上以下的依赖:

         <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-sleuth</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-sleuth-zipkin</artifactId>
        </dependency>

三个工程的配置文件application.yml加上以下的配置:

spring.zipkin.sender.type: web
#设置采样率默认为 0.1 注意之前的版本是percentage 新版本中更换为 probability
spring.sleuth.sampler.probability: 1
spring.zipkin.base-url: http://localhost:9411/
spring.zipkin.service.name: consumer

zipkin server支持mq方式收集链路信息,同时支持多种数据存储方式,比如es\mysql等,更多收集数据和存储方式见:https://github.com/openzipkin/zipkin/tree/master/zipkin-server

启动三个工程,在浏览器上访问:http://localhost:5000/consumer/hi-feign

访问zipkin server的api ,可以看到服务依赖,如下:

可以看到请求的具体耗时:

参考文档

https://zipkin.io/pages/quickstart.html

https://www.fangzhipeng.com/springcloud/2018/08/09/sc-f9-sleuth.html

源码下载

https://github.com/forezp/SpringCloudLearning/tree/master/sc-2020-chapter4

  • 2
    点赞
  • 0
    评论
  • 2
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

相关推荐
<p> <strong><span style="color:#7030A0;font-size:16px;">SpringCloud是目前流行的微服务框架,在各大互联网公司都有广泛的应用,同时在企业招聘面试时也会要求对微服务技术栈有所了解和掌握。SpringCloud是一套完整的微服务解决方案,基于SpringBoot框架。</span></strong> </p> <p> <br /> </p> <p> <span style="font-size:16px;color:#FF0000;"><strong><span style="font-size:18px;">本课程以通俗易懂的方式讲解SpringCloud技术栈,由浅入深,帮您快速入</span></strong><span style="font-size:18px;"><strong><span style="font-size:18px;">门!</span></strong></span></span> </p> <p> <span style="font-size:16px;color:#FF0000;"><br /> </span> </p> <p> <strong><span style="font-size:16px;">课程内容包括</span></strong> </p> <p> <span style="font-size:16px;">1<span style="font-size:16px;">. 微服务简介</span></span> </p> <p> <span style="font-size:16px;">2. SpringCloud技术栈</span> </p> <p> <span style="font-size:16px;">3. Restful API简介和设计原则</span> </p> <p> <span style="font-size:16px;">4. Restful API用法</span> </p> <p> <span style="font-size:16px;">5. 使用Postman测试接口</span> </p> <p> <span style="font-size:16px;">6. 使用Swagger2生成API文档</span> </p> <p> <span style="font-size:16px;">7. Eureka注册中心</span> </p> <p> <span style="font-size:16px;"><span style="font-size:16px;">8. </span><span style="font-size:16px;">Feign客户端</span></span> </p> <p> <span style="font-size:16px;">9. Hystrix断路器</span> </p> <p> <span style="font-size:16px;">10. Zuul网关</span> </p> <p> <span style="font-size:16px;">11. Ribbon负载均衡</span> </p> <p> <span style="font-size:16px;">12. 微服务的面试题</span> </p> <p> <br /> </p> <p> <br /> </p> <p> <span style="font-size:18px;"><strong><span style="color:#FF0000;">教学全程采用<span style="font-size:20px;color:#00B050;">笔记+代码案例</span>的形式讲解,每个知识点都有详细的讲解,通俗易懂!!!</span></strong></span> </p> <p> <br /> </p> <p> <img src="https://img-bss.csdn.net/201912191421361425.png" alt="" /> </p> <p> <br /> </p> <p> <img src="https://img-bss.csdn.net/201912191421501561.png" alt="" /> </p> <p> <br /> </p> <p> <img src="https://img-bss.csdn.net/201912191422071317.png" alt="" /> </p> <p> <br /> </p> <p> <img src="https://img-bss.csdn.net/201912191422176568.png" alt="" /> </p> <p> <br /> </p> <p> <img src="https://img-bss.csdn.net/201912191422296123.png" alt="" /> </p> <p> <br /> </p> <p> <img src="https://img-bss.csdn.net/201912191422419349.png" alt="" /> </p> <p> <br /> </p> <p> <br /> </p> <p> <span style="font-size:16px;"><strong><strong><strong>讲师介绍</strong></strong></strong><strong><strong><strong></strong></strong></strong><strong><strong></strong></strong></span> </p> <p> <img src="https://img-bss.csdn.net/201912191423463144.jpg" alt="" /> </p>
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值