这么多Apache顶级项目,SkyWalking为何一枝独秀?

本文摘自《Apache SkyWalking实战》,作者吴晟详细讲述了SkyWalking的架构设计与优势。与其他APM系统如CAT、Zipkin、Pinpoint相比,SkyWalking在云原生架构支持、易维护性、高性能和二次开发方面表现出色,成为Apache顶级项目。其设计原则包括面向协议、模块化和轻量化,支持多种语言探针和存储实现。
摘要由CSDN通过智能技术生成

吴晟

读完需要

5

分钟

速读仅需 2 分钟

吴晟

Apache基金会会员,Apache SkyWalking创始人、项目VP和PMC成员,Apache孵化器PMC成员,Apache ShardingSphere PMC成员,Apache APISIX (incubating) PPMC成员,Apache ECharts (incubating)和Apache DolphinScheduler (incubating)孵化器导师,Zipkin成员和贡献者,CNCF OpenTracing核心维护者。

导读:本文摘自于SkyWalking创始人吴晟撰写的《Apache SkyWalking实战》一书,详细讲述了SkyWalking的架构设计与优势。

徐郡明老师整理国内比较常见的 APM 如下:

APM 系统(Application Performance Management,即应用性能管理)

1.CAT: 由国内美团点评开源的,基于 Java 语言开发,目前提供 Java、C/C++、Node.js、Python、Go 等语言的客户端,监控数据会全量统计。

2.Zipkin: 由 Twitter 公司开发并开源,Java 语言实现。可以轻松与 Spring Cloud 进行集成,也是 Spring Cloud 推荐的 APM 系统。

3.Pinpoint: 韩国团队开源的 APM 产品,运用了字节码增强技术,只需要在启动时添加启动参数即可实现 APM 功能,对代码无侵入。目前支持 Java 和 PHP 语言,底层采用 HBase 来存储数据,探针收集的数据粒度非常细,但性能损耗较大,因其出现的时间较长,完成度也很高,文档也较为丰富,应用的公司较多。

4.SkyWalking: 国人开源的产品,2019 年 4 月 17 日 SkyWalking 从 Apache 基金会的孵化器毕业成为顶级项目。目前 SkyWalking 支持 Java、.Net、Node.js 等探针,数据存储支持MySQL、ElasticSearch等。SkyWalking 与 Pinpoint 相同,Java 探针采用字节码增强技术实现,对业务代码无侵入。探针采集数据粒度相较于 Pinpoint 来说略粗,但性能表现优秀。目前,SkyWalking 增长势头强劲,社区活跃,中文文档齐全,没有语言障碍,支持多语言探针,这些都是 SkyWalking 的优势所在,还有就是 SkyWalking 支持很多框架,包括很多国产框架,例如,Dubbo、gRPC、SOFARPC 等等,也有很多开发者正在不断向社区提供更多插件以支持更多组件无缝接入 SkyWalking。

还有很多不开源的 APM 系统,例如,淘宝鹰眼、Google Dapper 等等,不再展开介绍了。

1

   

SkyWalking 的架构设计

如图所示,SkyWalking 官方架构图对 SkyWalking 的整体架构进行了非常直观的描述。SkyWalking 由以下 4 个核心部分构成。

SkyWalking官方架构图

  • 探针。探针(对应图中Tracing和Mestrics部分)可以是语言探针,也可以是其他项目的协议。

  • OAP平台(Observability Analysis Platform),或称OAP Server。它是一个高度组件化的轻量级分析程序,由兼容各种探针的Receiver、流式分析内核和查询内核三部分构成。

  • 存储实现(Storage Implementors)。SkyWalking的OAP Server支持多种存储实现,并且提供了标准接口,可以实现其他存储。

  • UI模块(SkyWalking)。通过标准的GraphQL协议进行统计数据查询和展现。

从设计角度而言,SkyWalking总体遵循以下三大设计原则:

  • 面向协议设计

  • 模块化设计

  • 轻量化设计

1.1

   

面向协议设计

面向协议设计是 SkyWalking 从 5.x 开始严格遵守的首要设计原

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值