Skywalking分布式链路跟踪,相关图形,dljd,cat
一 业务:大型的几十个、几百个微服务构成的微服务架构系统
二 想法、需求、问题:链路跟踪
对于一个大型的几十个、几百个微服务构成的微服务架构系统,通常会遇到下面一些问题,比如:
如何串联整个调用链路,快速定位问题?
如何理清各个微服务之间的依赖关系?
如何进行各个微服务接口的性能分折?
如何跟踪整个业务流程的调用处理顺序?
三 解决方案:
(1)功能“集”:
- Skywalking提供分布式链路追踪、服务网格遥测分析、度量聚合和可视化一体化解决方案; 多种监控手段,可以通过语言探针和service mesh获得监控的数据; 支持多种语言自动探针,包括 Java,.NET Core 和 Node.JS; 轻量高效,无需大数据平台和大量的服务器资源; 模块化,UI、存储、集群管理都有多种机制可选; 支持告警; 优秀的可视化解决方案;
(2)“神”冰箱:Skywalking
四 “完成”“高效”视频:
1 体系组织
- 分布式链跟踪 定义:对分布式系统的应用程序运行情况(如执行顺序、性能等待)进行监视的工具 场景:专为微服务、云原生架构和基于容器(Docker、K8s)架构而设计; 产品:Skywalking(非spring cloud官网提供的。国内、java、apache下的顶级项目)等
- 相关网站 官网: 下载: Github: 使用公司:(国内非常多)
2 思想、思路、流原
整个架构分成四部分:
- 上部分Agent :负责从应用中,收集链路信息,发送给 SkyWalking OAP 服务器; 项目中加入Skywakling依赖 此时Skywakling跟踪应用的运行流程 把跟踪的数据发送给SkyWalking
- 下部分 SkyWalking OAP :负责接收Agent发送的Tracing数据信息,然后进行分析(Analysis Core),存储到外部存储器(Storage),最终提供查询(Query)功能; 可以把链路信息保存到持久化设备,如数据库:h2、mysql、TIDB等待。
- 右部分Storage:Tracing数据存储,目前支持ES、MySQL、Sharding Sphere、TiDB、H2多种存储器,目前采用较多的是ES,主要考虑是SkyWalking开发团队自己的生产环境采用ES为主;
- 左部分SkyWalking UI:页面负责提供控台,查看链路等等;
自己理解: 关:【关联、对比】 疑 重:【,实现技术,工具】 难:【感想、体会、领悟】 【总结、归纳、规律】 大道至简:提图表短(纲)