当前位置: 首页 > news >正文

63.微服务保姆教程 (六) SkyWalking--分布式链路追踪系统/分布式的应用性能管理工具

SkyWalking—分布式链路追踪系统/分布式的应用性能管理工具(APM)

一、为什么要用SkyWalking

对于一个有很多个微服务组成的微服务架构系统,通常会遇到一些问题,比如:

  • 如何串联整个调用链路,快速定位问题
  • 如何缕清各个微服务之间的依赖关系
  • 如何进行各个微服务接口的性能分折
  • 如何跟踪整个业务流程的调用处理顺序

随着目前系统架构的复杂度越来越高(中台、微服务),并且线上应用的多级监控覆盖到了通讯、应用处理过程监控并且实现端到端的应用监测,线上性能故障的快速定位修复;而传统的监控分析方式已经无法满足我们的需求,因此许多强大的APM(Application Performance Managment 应用性能管理)工具应运而生(SkyWalking、Pinpoint、Cat、Zipkin)。性能测试也面临同样问题,目前越来越多的端到端的压测,单体压测已经比较成熟不管从实施到监控分析,全链路的压测分析比较困难,特别是链路中瓶颈点的定位。我们今天就聊一下全链路的追踪工具之一SkyWalking,它是一款优秀的国产 APM 工具,包括了分布式追踪、性能指标分析、应用和服务依赖分析等。

二、SkyWalking的核心功能

1)故障定位——可以看到请求的完整路径,相比离散的日志,更方便定位问题(由于真实线上环境会设置采样率,可以利用debug开关实现对特定请求的全采样);

2)依赖梳理——基于调用关系生成服务依赖图;

3)性能分析和优化——可以方便的记录统计系统链路上不同处理单元的耗时占用和占比;

4)容量规划与评估;配合Logging和Metric强化监控和报警。

三、SkyWalking介绍

1.SkyWalking架构

SkyWalking 的核心是数据分析和度量结果的存储平台,通过 HTTP 或 gRPC 方式向 SkyWalking Collecter 提交分析和度量数据,SkyWalking Collecter 对数据进行分析和聚合,存储到 Elasticsearch、H2、MySQL、TiDB 等其一即可,最后我们可以通过 SkyWalking UI 的可视化界面对最终的结果进行查看。Skywalking 支持从多个来源和多种格式收集数据:多种语言的 Skywalking Agent 、Zipkin v1/v2 、Istio 勘测、Envoy 度量等数据格式。

整体架构看似模块有点多,但在实际上还是比较清晰的,主要就是通过收集各种格式的数据进行存储,然后展示。所以搭建 Skywalking 服务我们需要关注的是 SkyWalking Collecter、SkyWalking UI 和 存储设备,SkyWalking Collecter、SkyWalking UI 官方下载安装包内已包含,最终我们只需考虑存储设备即可。

2.SkyWalking工作原理:

skywalaking总体架构分为三部分:

1、skywalking-collector:链路数据归集器,数据可以落地ElasticSearch,单机也可以落地H2,不推荐,H2仅作为临时演示用

2、skywalking-web:web可视化平台,用来展示落地的数据

3、skywalking-agent:探针,用来收集和发送数据到归集器

3.SkyWalking资料信息

官方网站地址:

http://skywalking.apache.org/

http://incubator.apache.org/projects/skywalking.html

github项目地址:https://github.com/OpenSkywalking/skywalking-netcore

下载地址:http://skywalking.apache.org/downloads/

四、SkyWalking环境搭建

1.整体环境介绍

1.1SkywalkIng oapservice(服务端)

SkywalkIng oapservice是负责处理监控数据的,比如接受skywalKking agent的监控数据,并存储在数据库中;接受skywalking webapp的前端请求,从数据库查询数据,并返回数据给前端。Skywalking oapservice通常以集群的形式存在。

1.2skywalking agent (客户端)

skywalking agent和业务系统绑定在一起,负责收集各种监控数据

1.3skywalking webapp (UI界面)

用于展示数据。

1.4数据存储

用于存储监控数据的数据库,比如mysql、elasticsearch等。

在这里插入图片描述

2.下载SkywalkIng

skywalking在8.8.0版本以后将agent单独拆分了出来,所以若要使用8.8.0版本以后的,需要下载apm和agent两个压缩包。

下载地址:http://skywalking.apache.org/downloads/

下载APM:

在这里插入图片描述

下载Agents:

在这里插入图片描述

apm解压后的目录结构:

在这里插入图片描述

agents解压后的目录结构:

在这里插入图片描述

<

相关文章:

  • 原生 IP(Native IP)
  • C++23 std::generator:用于范围的同步协程生成器 (P2502R2, P2787R0)
  • FlinkCDC采集MySQL8.4报错
  • 如何监控Kafka的Lag(消费延迟)?
  • RT-Thread中的配置
  • MySQL同步ES的6种方案!
  • [三分钟]性能测试工具JMeter入门: 下载安装JMeter并设置中文;JMeter基本使用流程
  • 解锁科研文献检索密码:多工具协同攻略
  • 给frp设置开机自启
  • 应急响应靶场web1:知攻善防实验室
  • 分布式 ID 的技术解析与实现实践
  • 【Java EE初阶 --- 多线程(初阶)】多线程的基本内容
  • ZYNQ-UART串口中断
  • 【Java篇】内存中的桥梁:Java数组与引用的灵动操作
  • 前端封装框架依赖管理全攻略:构建轻量可维护的私有框架
  • livp文件使用python转换为heic或jpeg格式
  • k8s node cgroup 泄露如何优化?
  • 深入理解 Java 观察者模式:原理、实现与应用
  • 【开发工具】Window安装WSL及配置Vscode获得Linux开发环境
  • npm install下载插件无法更新package.json和package-lock.json文件的解决办法
  • 缅甸国防军继续延长临时停火期限至5月31日
  • 践行自由贸易主义理念,加快区域合作进程
  • 媒体:不能让追求升学率,成为高中不双休的借口
  • 无畏契约新王诞生:属于电竞世界的凯泽斯劳滕奇迹
  • 人民日报今日谈:坚决克服麻痹思想,狠抓工作落实
  • 首都航空:太原至三亚航班巡航阶段出现机械故障,已备降南宁机场