| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> Spring Cloud 学习笔记之——12 Spring Cloud Sleuth分布式请求链路追踪 -> 正文阅读 |
|
[Java知识库]Spring Cloud 学习笔记之——12 Spring Cloud Sleuth分布式请求链路追踪 |
????????在微服务框架中,一个由客户端发起的请求在后端系统中会经过多个不同的服务节点用来协同产生最后的请求结果,每一个前段请求都会形成一条复杂的分布式服务调用链路,链路中的任何一环出现高延迟时或错误都会引起整个请求最后的失败。 ? ? ? ?Spring Cloud Sleuth 提供了一套完整的服务跟踪解决方案,在分布式系统中提供追踪解决方案并且兼容支持了 zipkin,官方源码。 下图是产品调用库存模块,发送 trace 数据, Zipkin dashboard 提供网页展现。 搭建链路监控步骤(Sluth 负责收集整理,zipkin 负责展现)1.zipkin????????SpringCloud从F版起已不需要自己构建Zipkin server了,只需要调用jar包即可。zipkin 下载链接:Central Repository: io/zipkin/zipkin-server
一条链路通过 Trace Id 唯一标识,Span 标识发起的请求信息,各 span 通过 parent id 关联起来? 个人理解:Span Id 标识一个微服务,Parent Id 标识调用它的那个微服务的 Span Id 整个的链路依赖关系如下:? Trace:类似于树结构中的Span 集和,表示一条调用链路,存在唯一标识 Span:表示调用链路来源,通俗的理解 Span 就是依次请求信息 2.服务提供者这里采用?cloud-provider-payment8001 作为服务的提供者 2.1、在?cloud-provider-payment8001 的 POM文件中添加如下依赖:
2.2、修改其 application.yml 配置文件
2.3、业务类:在?Controller 中添加方法,com.atyixuan.springcloud.controller.PaymentController 添加的业务方法如下,直接追加到?PaymentController 的结尾:
3.服务消费者(调用方)这里采用?cloud-consumer-order80 作为服务的消费者 3.1、在?cloud-provider-payment8001 的 POM文件中添加如下依赖:
3.2、修改其 application.yml 配置文件
3.3、业务类:在?Controller 中添加方法,com.atyixuan.springcloud.controller.OrderController 添加的业务方法如下,直接追加到?OrderController?的结尾:
测试依次启动: cloud-eureka-server7001、cloud-provider-payment8001 和?cloud-consumer-order80 浏览器中输入:http://localhost/consumer/payment/zipkin 浏览器输入:http://localhost:9411/zipkin/ 跳转到依赖这一栏:单击搜索框,左边的下拉菜单显示当前使用的服务名称 ?在下拉框中选中一个服务:这里以?cloud-payment-service 为例,下图显示 23次访问,访问出错 0 次,单击 TRACES? ?可以显示每一次访问的细节 单击?TRACES 之后,单击 RUN QUERY 查询最近访问的 10 条结果 这里显示访问持续的时间是 9.047 ms,标签显示是 GET 请求,请求路径是? /consumer/payment/zipkin ,发出请求的Controller 类是?OrderController,请求的方法是paymentZipkin() |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 11:06:43- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |