全链路跟踪——Skywalking简介(二)

1. Skywalking简介

Skywalking是一款国产开源框架,为分布式系统的应用程序性能监控工具,特别为微服务、云原生和基于容器(Kubernetes)架构而设计,基于OpenTracing规范、开源的AMP系统。Skywalking提供分布式跟踪、服务网格遥测分析、度量聚合和可视化一体化解决方案。支持Java, .Net Core, PHP, NodeJS, Golang, LUA语言探针。
Apache SkyWalking(简称SkyWalking)是一个开源的、可观察性平台,通过提供应用性能监控(APM)、分布式追踪、度量聚合等功能,帮助开发者和运维人员全面了解应用程序的运行状况。

2. Skywalking架构设计

Skywalking采用分布式和可扩展的架构设计,包含三个主要组件:探针、后端和前端。

  • Agent(探针):
    1. Skywalking通过Agent来收集应用程序运行是的数据。探针是一组用于监控应用程序性能的轻量级插件,可以在应用程序启动时动态加载。根据应用程序的变成语言和框架,Skywalking提供了多种探针:Java、.NET、Go等。
    2. Skywalking探针采用字节码植入(Bytecode Instrumentation,简称BI)来收集收集服务运行时的数据,包含Trace、Metrics 等数据,通过gRPC/HTTP方式上报Skywalking后端。字节码植入技术在不修改应用程序源码的情况下,直接修改字节码,从而实现对应用程序的监控。这种方法对应用程序透明,无需修改源码,不影响应用的正常运行。SkyWalking支持多种编程语言的探针,如Java、.NET、Go等。
  • OAP(后端):Skywalking后端服务,其主要责任有两个:
    1. 负责接收Agent上报的Trace、Metrics 等数据,交给Analysis Core进行流式分析,并将分析得到的结果写入到持久化存储中。Skywalking可以使用ES、H2、MySQL、PG等作为其持久化存储,Skywalking后端支持水平拓展。
    2. 负责响应Skywalking UI界面发送来的查询请求,将前面持久化的数据查询出来,组成正确的响应结果返回给 UI界面进行展示。
  • UI 界面:SkyWalking 前后端进行分离,该 UI 界面负责将用户的查询操作封装为 GraphQL 请求提交给 OAP后端触发后续的查询操作,待拿到查询结果之后会在前端负责展示,帮助用户轻松查看和分析监控数据。

3. Skywalking核心功能

3.1分布式追踪

Skywalking通过实现分布式追踪功能,能够准确地获取到系统中各个服务之间的调用关系,可以跨应用程序边界跟踪请求/响应的完整过程,跟踪服务、调用堆栈、 RPC、HTTP、MQ,从而让开发者更加清晰地了解系统的工作流程。

3.2 应用性能监控

通过对服务、实例、端点的性能数据进行监控,SkyWalking能够帮助用户发现潜在的性能问题,从而提高系统的稳定性和性能。

3.3 度量聚合

SkyWalking支持多种度量数据来源,包括自定义指标和开箱即用的指标,如响应时间、吞吐量、错误率等。通过对这些数据进行聚合和分析,用户可以更好地了解系统的运行状况。

3.4 报警功能

SkyWalking可以基于用户设置的阈值对监控指标进行报警,及时通知相关人员解决问题。

3.5 可视化界面

SkyWalking提供了一套友好的可视化界面,使得用户能够轻松地查看和分析监控数据。

4. 应用

  • 故障排查:通过SkyWalking提供的分布式追踪和性能监控功能,开发和运维团队可以快速定位系统中的故障点,有效降低故障排查的难度和时间成本。
  • 性能优化:SkyWalking可以帮助团队发现潜在的性能瓶颈,从而制定针对性的优化策略,提高系统的稳定性和响应速度。
  • 容量规划:通过对系统的吞吐量、响应时间等关键指标进行长期监控,企业可以更准确地评估系统的扩容需求,避免因资源不足导致的性能下降。
  • 业务指标监控:SkyWalking支持自定义业务指标,使得企业可以根据实际需求对关键业务指标进行监控,及时发现业务异常,并采取相应措施。
  • 多云环境支持:随着云计算技术的普及,越来越多的企业选择将应用部署在多云环境中。SkyWalking可以轻松地集成到各种云平台中,提供统一的监控视图,帮助企业更好地管理跨云应用。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值