赞
踩
项目 | Zipkin | Pinpoint | Skywalking | CAT | jaeger |
---|---|---|---|---|---|
实现方式 | 拦截请求 | Java探针, 字节码增强 | Java探针, 字节码增强 | 代码埋点 | 拦截请求 |
支持语言 | Java | Java | Java/C/C++/Go/Nginx等 | Java/C/C++/Go/Node.js | Go |
接入方式 | 基于linkerd或者sleuth方式, 引入配置即可 | javaagent字节码 | javaagent字节码 | 代码侵入 | 拦截/侵入 |
agent到collector的协议 | http,MQ | thrift | gRPC | http/tcp | udp/http |
OpenTracing | √ | × | √ | × | √ |
颗粒度 | 接口级 | 方法级 | 方法级 | 代码级 | 接口级 |
全局调用统计 | × | √ | √ | √ | × |
traceid查询 | √ | × | √ | × | √ |
报警 | × | √ | √ | √ | × |
JVM监控 | × | × | √ | √ | × |
数据存储 | ES/mysql/Cassandra/内存 | Hbase | ES/H2/PG/MySQL | mysql,hdfs | ES/kafka/Cassandra,内存 |
STAR | 16.3k | 12.9k | 22.2k | 18k | 18.1k |
模拟了三种并发用户:500,750,1000。使用jmeter测试,每个线程发送30个请求,设置思考时间为10ms。使用的采样率为1,即100%,这边与生产可能有差别。pinpoint默认的采样率为20,即50%,通过设置agent的配置文件改为100%。zipkin默认也是1。组合起来,一共有12种。下面看下汇总表:
从上表可以看出,在三种链路监控组件中,skywalking的探针对吞吐量的影响最小,zipkin的吞吐量居中。pinpoint的探针对吞吐量的影响较为明显,在500并发用户时,测试服务的吞吐量从1385降低到774,影响很大。然后再看下CPU和memory的影响,在内部服务器进行的压测,对CPU和memory的影响都差不多在10%之内。
转载:
https://blog.csdn.net/A123638/article/details/123117142
https://juejin.im/post/5a7a9e0af265da4e914b46f1
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。