-->

Zipkin与SKYWalking的对比

2021-01-15 12:16发布

链路监控的原理:理论依据是来源于2010 google 发布的一篇论文dapper

Zipkin

优:

  1. 提供有 Query 接口,更强大的用户界面和系统集成能力,可以基于该接口二次开发实现
  2. 社区是Apache,运营更好,更活跃,支持的语言更丰富

缺:

  1. 侧重收集器和存储服务,虽然也有用户界面,但其功能与 SKYWalking不可同日而语
  2. Zipkin Java 接口实现 Brave,只提供了基本的操作 API,如果需要与框架或者项目集成的话,就需要手动添加配置文件或增加代码。版本Maven依赖复杂,会出现冲突导致功能不可用问题

SKYWalking

优:

  1. 是一个完整的性能监控解决方案:有从探针、收集器、存储到 Web 界面等全套体系
  2. 基于Java Agent探针技术,通过字节码注入的方式实现调用拦截和数据收集,可以做到真正的代码无侵入,只需要在启动服务器的时候添加一些参数,就可以完成探针的部署
  3. 已经纳入Apache 开源项目,并且是中国的开源项目,文档更丰富,更方便理解;

缺:

  1. 自我定制不方便
  2. 语言相对集中在Java语言

 

总结:

从公司的定位场景上说,短期目标SKYWalking具有优势:无需对项目代码进行任何改动就可以部署探针、追踪数据细粒化到方法调用级别、功能强大的用户界面以及几乎比较全面的 Java 框架支持。但是长远来看,学习 SKYWalking的开发接口,以及未来为不同的框架实现接口的成本都还是个未知数。对应Zipkin就是可以支持后续自己扩展做一些定制监控,自主开发业务性更灵活些。

标签: