# APM系统简单对比(zipkin,pinpoint和skywalking)
* [一、性能损耗对比](#_1)
* [二、Zipkin](#Zipkin_6)
* [三、Pinpoint](#Pinpoint_14)
* [四、Skywalking](#Skywalking_25)
## 一、性能损耗对比

从上表可以看出,在三种链路监控组件中,skywalking的探针对吞吐量的影响最小,zipkin的吞吐量居中。pinpoint的探针对吞吐量的影响较为明显,在500并发用户时,测试服务的吞吐量从1385降低到774,影响很大。然后再看下CPU和memory的影响,在内部服务器进行的压测,对CPU和memory的影响都差不多在10%之内。
## 二、Zipkin
> 调用链
> 
**优点**:与`spring-cloud`项目整合非常方便,而且支持以`spring-boot`的方式部署`zipkin-collector`
**缺点**:功能比较少,而且有代码入侵(jar包和配置项)
## 三、Pinpoint
> 首页
> 
> 调用链
> 
**优点**:功能比较全,UI比较好,而且调用链的跟踪粒度非常细,并且依靠HBase强大的存储能力适合日志量非常庞大的场景
**缺点**:由于采集信息太过详细所以对性能的损耗最大,并且HBase的维护代价有点大,需要有能力hold住一套HBase集群
## 四、Skywalking
> 首页
> 
> 应用拓扑图
> 
**优点**:功能比较全,UI比较好,性能损耗较少,主流中间件和数据库的监控基本都支持
**缺点**:es强在检索能力但存储能力偏弱