1. APM简述
????APM?(Application Performance Management)是对企业的应用系统进行实时监控,它是用于实现对应用程序性能管理和故障管理的系统化的解决方案。
2.APM主要解决的问题:
......
3.分布式调用追踪(APM)一览
4.方案对比
pinpoint | jaeger | |||
OpenTracing兼容 | 否 | 是 | 是 | 是 |
客户端支持语言 | java、php | java,c#,go,php等 | java,c#,go,php等 | Java, .NET Core, NodeJS and PHP |
存储 | hbase | ES,mysql,Cassandra,内存 | ES,kafka,Cassandra,内存 | ES,H2,mysql,TIDB,sharding sphere |
传输协议支持 | thrift | http、MQ | udp/http | gRPC |
ui丰富程度 | 高 | 低 | 中 | 中 |
实现方式-代码侵入性 | 字节码注入,无侵入 | 拦截请求,侵入 | 拦截请求,侵入 | 字节码注入,无侵入 |
扩展性 | 低 | 高 | 高 | 中 |
trace查询 | 不支持 | 支持 | 支持 | 支持 |
告警支持 | 支持 | 不支持 | 不支持 | 支持 |
jvm监控 | 支持 | 不支持 | 不支持 | 支持 |
性能损失 | 高 | 中 | 中 | 低 |
5.各方案参考链接
????1.pinpoint-naver
????docker快速体验:GitHub - pinpoint-apm/pinpoint-docker: Official Dockerized components of the Pinpoint
????2.zipkin-推特:
????github:?GitHub - openzipkin/zipkin: Zipkin is a distributed tracing system
????页面详解:sleuth+zipkin ui界面详解(二)_sharedCode源码交流-CSDN博客_zipkin 界面
????zipkin于php对接:https://www.colabug.com/1872361.html
????3.jaeger-uber
????部分参考资料:
????jaeger简介,部署,入门实践?Uber jaeger--一个基于Go的分布式追踪系统 - 北极之北的个人空间 - OSCHINA - 中文开源技术交流社区
????jaeger——java实现?https://my.oschina.net/u/1789379/blog/1551421
????Uber分布式追踪系统Jaeger使用介绍和案例(PHP Hprose Go 跨语言调用)
????https://segmentfault.com/a/1190000011636957
????全链路监控Jaeger搭建实战?全链路监控Jaeger搭建实战 - 简书
????jaeger官网快速开始?Getting started — Jaeger documentation
????4.skywalking(推荐)
????github:?GitHub - apache/skywalking: APM, Application Performance Monitoring System
????SkyWalking 分布式追踪系统?SkyWalking 分布式追踪系统 - 简书
????Apache SkyWalking 5.0中文版图文详解使用手册
????http://skywalking.apache.org/zh/blog/2018-12-18-Apache-SkyWalking-5-0-UserGuide.html
????skywalking学习笔记?skywalking学习笔记 - 掘金
6.参考资料