分布式链路追踪原理详解及SkyWalking、Zipkin介绍

背景:追踪调用链路,监控链路性能,排查链路故障

随着微服务架构的流行,一次请求往往需要涉及到多个服务,需要一些可以帮助理解系统行为、用于分析性能问题的工具,以便发生故障的时候,能够快速定位和解决问题。

单体架构中可以使用 AOP 在调用具体的业务逻辑前后分别打印一下时间即可计算出整体的调用时间,使用 AOP 来 catch 住异常也可知道是哪里的调用导致的异常。

a7c6a3fc656311e26c23665d001d403f.png

 

基本实现原理

一个完整请求链路的追踪ID(traceid)用于查出本次请求调用的所有服务,每一次服务调用的跨度ID(spanid)用来记录调用顺序

ed0d12ec4e9e5780bb29f5560f922b09.png

上游服务parenetid用来记录调用的层级关系

67f2488ee34e506e9e17f86db98beee1.png

调用时间timestamp,把请求发出、接收、处理的时间都记录下来,计算业务处理耗时和网络耗时,然后用可视化界面展示出来每个调用链路,性能,故障

6b62894b4db835b7e5f4b6e604fe00ea.png

97bbd874c258e8860de830389c7116cc.png

还可以记录一些其他信息,比如发起调用服务名称、被调服务名称、返回结果、IP、调用服务的名称等,最后,我们再把相同spanid的信息合成一个大的span块,就完成了一个完整的调用链。

a587384d695d7c18b62ca3c4eab9e9b5.png

 

SkyWalking的原理及架构设计

节点数据的定时采样,采样后将数据定时上报,将其存储到 ES, MySQL 等持久化层,有了数据自然而然可根据数据做可视化分析。

9540eaab2edad233ad3a6de19ac16d82.png

skywalking的工作机制

skywalking的工作机制,需要三块协同。工作原理图大致如下:

  • 一块是skywalking server,负责接收、存储并展示,所以server模块包含一个展示web子模块;
  • 第二块是agent,负责代理微服务并收集需要的信息,转发给server;
  • 第三块便是微服务本身,需要在启动时指定agent,以便生成代理类。

如何通过Zipkin或SKYwalking实现链路追踪

SkyWalking 核心模块介绍:

SkyWalking采用组件式开发,易于扩展,主要组件作用如下:

1. Skywalking Agent:链路数据采集tracing(调用链数据)和metric(指标)信息并上报,上报通过HTTP或者gRPC方式发送数据到Skywalking Collector

2. Skywalking Collector : 链路数据收集器,对agent传过来的tracing和metric数据进行整合分析通过Analysis Core模块处理并落入相关的数据存储中,同时会通过Query Core模块进行二次统计和监控告警

3. Storage

视频-分布式链路追踪skywalking.txt
10-24
视频-分布式链路追踪skywalking.txt
阿里云链路追踪服务全面支持SkyWalking.pdf
11-02
阿里云链路追踪服务全面支持SkyWalking.pdf 个人收集电子书,仅用学习使用,不可用于商业用途,如有版权问题,请联系删除!
分布式监控Skywalking安装及使用教程(保姆级教程)
最新发布
2401_84185074的博客
04-12 708
4)][外链图片转存中…(img-U0bB0iEY-1712882738924)]
分布式系统全链路监控介绍包括架构,原理
01-27
应用架构由集中式向分布式演进后,整个调用关系变得复杂。 分布式架构由复杂且较大规模集群构成,各个应用之间相当独立,可能由不同团队、不同语言实现。 系统一个完整的调用过程可能横跨多个服务及数据中心。 复杂的调用导致系统出问题后难以定位问题。 无法准确知道整体系统性能及运行情况。一个请求完整的调用链可能如下图,经过多个系统服务,调用关系复杂。期间我们会关注各个调用的各项
分布式链路追踪工具SkyWalking集成Elasticsearch(基于Docker)
01-20
前言 目前主要的一些 APM 工具有: Cat、Zipkin、Pinpoint、SkyWalking;Apache SkyWalking 是观察性分析平台和应用性能管理系统。提供分布式追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。 具体请参考 funtl.com SkyWalking 服务端配置 1、基于 Docker 安装 ElasticSearch Docker及Docker-Compose安装 Centos7(Ubuntu18.04)安装Docker 创建目录 mkdir -p /usr/local/docker/skywalking docker-compose.yml v
Skywalking链路追踪自身耗时和总耗时算法分析
08-01
Skywalking链路追踪自身耗时和总耗时算法分析
一文搞懂全链路监控:方案概述与比较 | 干货
weixin_38320674的博客
01-30 3499
原文标题为《全链路监控(一):方案概述与比较》,作者陶邦仁,链接:https://www.jianshu.com/p/92a12de11f180—问题背景随着微服务架构的流行,服务按照...
全链路内容分享(四):分布式链路追踪原理详解SkyWalkingZipkin介绍
之乎者也·的博客
02-11 1379
链路数据采集tracing(调用链数据)和metric(指标)信息并上报,上报通过HTTP或者gRPC方式发送数据到Skywalking Collector: 链路数据收集器,对agent传过来的tracing和metric数据进行整合分析通过Analysis Core模块处理并落入相关的数据存储中,同时会通过Query Core模块进行二次统计和监控告警3. Storage。
4.Skywalking原理
liuhehe的博客
03-17 1579
请参考黑马程序员文档 https://github.com/heheliu321/jvm/tree/master/java_agent_user
SkyWalking 实现跨线程 Trace 传递
谈谈1974
06-22 8162
在进程内采用异步多线程时,如果不做任何处理,SkyWalking 追踪执行链路的 trace 信息必然会出现中断。一般来说保证执行链路信息的完整是刚性需求,这时候为了实现 trace 信息的跨线程传递,就需要使用 SkyWalking 的异步任务包装类SkyWalking 的 Java 客户端提供了异步任务包装类用于完成多线程下 trace 的跨线程传递功能,目前有如下几个实现:以 为例,其使用示例如下: 1.2 跨线程包装类的原理 1.2.1 @TraceCrossThread 注解 以下为 Suppl
全链路监控工具:zipkinskywalking,pinpoint 详细介绍
小楼一夜听春雨,深巷明朝卖杏花
06-16 2235
github: https://github.com/openzipkin/zipkin
Apollo&&Apache Skywalking原理
05-02
Apollo&&Apache Skywalking原理图 Apollo&&Apache Skywalking原理图 Apollo&&Apache Skywalking原理
分布式+链路追踪+skywaling+探针
11-11
分布式+链路追踪+skywaling+探针
基于Skywalking的全链路跟踪实现
牧羊人的方向
11-07 1078
本文重点介绍基于Skywalking的全链路实现,包括Skywalking的整体架构和基本概念原理Skywalking环境部署、SpringBoot和Python集成Skywalking监控实现等
SkyWalking分布式服务追踪与调用链系统
京北游戏官方
08-22 1084
{"scopeId"1"scope""SERVICE""name""serviceA""id0"12"id1"0"ruleName"}, {"scopeId"1"scope""SERVICE""name""serviceB""id0"23"id1"0"ruleName"}]scopeId、scope:所有可用的 Scope 详见name:目标 Scope 的实体名称id0:Scope 实体的 ID。
一文带你看懂,SkyWalking分布式追踪系统原理及实践
热门推荐
vincent
09-28 1万+
前言 在微服务架构中,一次请求往往涉及到多个模块,多个中间件,多台机器的相互协作才能完成。这一系列调用请求中,有些是串行的,有些是并行的,那么如何确定这个请求背后调用了哪些应用,哪些模块,哪些节点及调用的先后顺序?如何定位每个模块的性能问题?本文将为你揭晓答案。 分布式追踪系统的原理及作用 如何衡量一个接口的性能好坏,一般我们至少会关注以下三个指标 接口的 RT 你怎么知道? 是否有异常响应? 主要慢在哪里? 单体架构 在初期,公司刚起步的时候,可能多会采用..
SkyWalking全景解析:从原理到实现的分布式追踪之旅
todoitbo的博客
11-22 1901
本文深入研究了分布式系统中的追踪工具SkyWalking,通过详细解析其实现原理和内部机制,帮助读者深入理解分布式应用的性能和调试方面的挑战。无论您是系统管理员、开发者还是对分布式系统感兴趣的技术爱好者,都将从这篇博客中获得有价值的见解。
分布式链路追踪SkyWalking详解和实战
Java__EE小白成长之路
08-09 1891
2015年由个人吴晟(华为开发者)主导开源,作者是华为开发云监控产品经理,主导监控产品的规划、技术路线及相关研发工作,也是OpenTracing分布式追踪标准组织成员 ,该项目 2017年加入Apache孵化器,是一个分布式系统的应用程序性能监控工具(APM),专为微服务、云原生架构和基于容器(Docker、K8s、Mesos)架构而设计。官方站点:http://skywalking.apache.org/GitHub项目地址:https://github.com/apache/skywalking其核心功
SpringCloud从入门到放弃之链路追踪一(Sleuth+Zipkin)
qq_33479841的博客
04-11 3381
1.概述 ”链路追踪“一词首次在google的Dapper论文中出现,该论文介绍了google自研的分布式链路追踪的实现原理,还介绍了他们是怎么低成本实现对应用透明的。Dapper论文一开始介绍的只是一个独立的链路调用系统,后来逐步演化成了监控平台,并且基于监控平台衍生出了许多工具,比如实时预警、过载保护等。单纯的理解链路追踪,就是记录一次请求开始到结束,期间所调用的系统及耗时都能被完整的记录下来。 现在所说的链路追踪系统,都是具有一套相对比较完整的功能,不仅具备记录功能,还具备一大堆衍生功能,让人能够更清
dubbo skyworking8
05-16
我不太明白你的问题,请问你想了解什么关于Dubbo和SkyWalking的内容?Dubbo是一种分布式服务框架,而SkyWalking是一个分布式跟踪和监控系统。它们可以一起使用来提供更好的分布式服务管理和监控。SkyWalking可以通过Dubbo插件来集成和使用,以便对Dubbo服务进行跟踪和监控。如果你有具体的问题,可以详细说明,我会尽力回答。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

分类专栏

  • Java基础 132篇
  • 数据库 56篇
  • 面试 8篇
  • 理财 35篇
  • Spring 8篇
  • 框架 9篇
  • kafka 19篇
  • 网络 4篇
  • 缓存 9篇
  • 阅读 2篇
  • 产品 1篇
  • 项目 16篇
  • 设计模式 7篇
  • bug 25篇
  • 微服务 14篇
  • 架构 23篇
  • 分布式 8篇
  • redis 9篇
  • Zookeeper 10篇
  • Linux 6篇
  • 工具 13篇
  • 前端 13篇
  • 服务器 3篇
  • 移动开发 4篇
  • 生涯 23篇
  • 生活 11篇
  • 电脑 2篇
  • python 1篇
  • 算法 2篇
  • 学校 11篇
  • 其他 1篇

最新评论

  • 远程桌面失败:你的凭据不工作

    �164: 方法四的解决办法,亲测有效,链接:https://blog.csdn.net/spacesix/article/details/130678015?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-130678015-blog-128184808.235%5Ev40%5Epc_relevant_anti_vip_base&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-2-130678015-blog-128184808.235%5Ev40%5Epc_relevant_anti_vip_base&utm_relevant_index=5

  • 使用DNS名称作为安全性依据的漏洞优化

    年轻的猴: 服了,我也找不到这个iptutil

  • Kafka的生成者、消费者、broker的基本概念

    jsfzdd: 谢谢提醒,那我再看一遍吧表情包

  • Mybatis新增数据,存在就更新,不存在就添加

    不爱打代码22: LBJ反手一个赞

  • 如何理解 String 类型值的不可变?

    卡罗特ok: 解答了疑惑!

最新文章

  • 鱼皮在腾讯的试用期总结!
  • 腾讯程序员的职业晋升答辩之【完全解析】
  • 毕业前三年如何拿到好绩效
2021年112篇
2020年137篇
2019年172篇
2018年46篇

目录

目录

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值

深圳SEO优化公司长沙营销型网站建设推荐潮州网站改版哪家好武威网站搭建公司文山优化推荐秦皇岛营销型网站建设推荐楚雄网站seo优化报价张家口设计网站南平至尊标王报价张掖百姓网标王推广哪家好达州百度爱采购推荐珠海百度爱采购南宁网页设计公司大同英文网站建设价格郴州网站优化按天扣费公司内江阿里店铺托管报价昌都百姓网标王推广推荐南宁阿里店铺托管黔西南百度seo推荐铜仁网站优化按天计费报价垦利英文网站建设推荐哈密网站建设思茅企业网站建设价格光明网站推广公司上饶外贸网站制作哪家好仙桃营销网站哪家好漳州seo网站优化多少钱永湖网页设计大丰百姓网标王推广公司上饶建网站公司焦作企业网站设计哪家好歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化