skywalking架构

1.整体架构

整个架构,分成上、下、左、右四部分:

在SkyWalking中,trace 数据和 metrics 数据是两种关键的监控数据类型,它们帮助你理解应用的运行状态、性能瓶颈和故障点

1.1Trace 数据

  • Trace 数据是分布式追踪数据,它记录了一个请求在整个分布式系统中的完整路径和所有涉及的服务或组件。这种数据通常用来追踪请求的执行情况,包括每个服务或操作的耗时、调用顺序和状态。

  • 用途: Trace 数据主要用于性能分析和问题诊断。它帮助开发人员了解一个请求是如何在不同的服务之间流转的,哪里出现了延迟或错误等。

  • 组成:

    • Trace Segment: 每个服务在处理请求时会生成一个Trace Segment,代表这个服务的处理部分。
    • Span: Trace Segment由多个Span组成,每个Span表示一次具体的操作或调用,比如一次HTTP请求或一次数据库查询。
  • 应用场景:

    • 识别性能瓶颈:通过查看每个Span的耗时,开发人员可以识别在哪些服务或操作上花费了过多时间。
    • 故障排查:Trace数据能够显示错误的来源和传播路径,帮助迅速定位问题。

1.2. Metrics 数据

  • Metrics 数据是指标数据,它定期收集系统的运行状态信息,比如CPU使用率、内存占用、请求数量、错误率等。这些数据可以为长期监控提供趋势分析。

  • 用途: Metrics 数据主要用于性能监控和容量规划。它帮助系统管理员了解系统资源的使用情况、整体性能趋势以及预测未来的需求。

  • 组成:

    • 系统级别的Metrics: 如CPU使用率、内存使用情况、网络流量等。
    • 应用级别的Metrics: 如请求响应时间、请求量、错误率等。
  • 应用场景:

    • 性能监控:通过监控关键性能指标,管理员可以及时发现系统资源耗尽的情况。
    • 容量规划:长期收集的Metrics数据可以帮助管理员预测未来的资源需求,从而提前进行扩展或优化。

1.3. SkyWalking OAP

负责接收 Agent 发送的 Tracing 数据信息,然后进行分析(Analysis Core) ,存储到外部存储器( Storage ),最终提供查询( Query )功能。

1.4. 左部分 SkyWalking UI

Tracing 数据存储。目前支持 ES、MySQL、Sharding Sphere、TiDB、H2 多种存储器。而我们目前采用的是 ES ,主要考虑是 SkyWalking 开发团队自己的生产环境采用 ES 为主。

1.5. 右部分 Storage

负责提供控台,查看链路等等。

相关推荐
运维潇哥16 天前
skywalking接入nginx
运维·nginx·skywalking
优质&青年16 天前
【云原生kubernetes系列之SkyWalking篇】
云原生·kubernetes·skywalking
运维潇哥19 天前
skywalking服务部署
linux·运维·skywalking
源来猿往19 天前
SkyWalking部署(监控系统)
运维·skywalking
优质&青年20 天前
【云原生系列之SkyWalking的部署】
运维·云原生·云计算·skywalking
&如歌的行板&21 天前
在docker中安装skywalking + es
大数据·elasticsearch·skywalking
云观秋毫21 天前
APO 新发版支持Skywalking Agent接入
skywalking
云草桑24 天前
云原生之全链路分布式跟踪系统 Zipkin和SkyWalking
分布式·云原生·skywalking
zzvine1 个月前
go-zero接入skywalking链路追踪
golang·skywalking
li.wz1 个月前
Docker 部署 SkyWalking 的指南
docker·容器·skywalking