SpringCloud:微服务利剑之APM平台(二)Pinpoint

Pinpoint是一个强大的分布式系统链路追踪平台,采用无入侵方式,通过字节码增强技术实现高性能监控。它能自动检测应用拓扑,提供代码级别的可见性,支持大规模集群。Pinpoint主要由Agent、Collector、Web UI和HBase存储组件构成,通过跟踪Span、Trace和TraceId等数据结构,实现分布式事务跟踪和性能分析。在实际部署中,需注意与Java版本、HBase版本以及Flink版本的兼容性。
摘要由CSDN通过智能技术生成
  1. Pinpoint概述
    Pinpoint是一个由韩国人编写的为大型分布式系统服务的链路跟踪平台,并提供大量链路跟踪数据分析汇总解决方案。自2012年7月开始开发,与2015年1月做为一个开源项目推出。

  2. Pinpoint主要特性
    分布式事务跟踪,跟踪跨分布式应用的消息。
    自动检测应用拓扑,帮助你搞清楚应用的架构。
    水平扩展以便支持大规模服务器集群。
    提供代码级别的可见性以便轻松定位失败点和瓶颈。
    使用字节码增强技术,添加新功能而无需修改代码。

  3. Pinpoint优势
    无入侵:采用字节码增强技术,新增功能无需修改代码。
    性能高:对性能的影响非常小(资源使用量最小仅增加3%),异步数据传输,采用UDP协议让出网络连接优先级。

  4. Pinpoint架构简介
    先看一下官方提供的架构图,如图:

在这里插入图片描述

Pinpoint主要包含了4个组件:

Pinpoint Agent:探针,附加到用于分析的Java服务
Pinpoint Collector:数据收集组件,部署在Web容器上
Pinpoint Web UI:数据展示组件,部署在Web容器上
HBase Storage:数据存储组件
架构图从上往下看,首先是通过Agent组件收集需要的数据,通过UPD/TCP的方式将数据发送给Collector,由Collector将数据分析整理过后存入HBase,通过Web UI组件将分析好的数据从HBase中读出,展示在现代化的UI界面上。

  1. Pinpoint数据结构简介
    Pinpoint中,核心数据结构由Span, Trace, 和 TraceId组成。

Span: RPC (远程过程调用/remote procedure call)跟踪的基本单元; 当一个RPC调用到达时指示工作已经处理完成并包含跟踪数据。为了确保代码级别的可见性,Span拥有带SpanEvent标签的子结构作为数据结构。每个Span包含一个TraceId。
Trace: 多个Span的集合; 由关联的RPC (Spans)组成. 在同一个trace中的span共享相同的TransactionId。Trace通过SpanId和ParentSpanId整理为继承树结构.
TraceId: 由 TransactionId, SpanId, 和 ParentSpanId 组成的key的集合. TransactionId 指明消息ID,而SpanId 和 ParentSpanId 表示RPC的父-子关系。
TransactionId (TxId): 在分布式系统间单个事务发送/接收的消息的ID; 必须跨整个服务器集群做到全局唯一.
SpanId: 当收到RPC消息时处理的工作的ID; 在RPC请求到达节点时生成。
ParentSpanId (pSpanId): 发起RPC调用的父span的SpanId. 如果节点是事务的起点,这里将没有父span – 对于这种情况, 使用值-1来表示这个span是事务的根span。
6. Pinpoint版本依赖
Pinpoint所需要的Java版本兼容:
Pinpoint Version Agent Collector Web
1.0.x 6-8 6-8 6-8
1.1.x 6-8 7-8 7-8
1.5.x 6-8 7-8 7-8
1.6.x 6-8 7-8 7-8
1.7.x 6-8 8 8
1.8.0 6-10 8 8
1.8.1+ 6-11 8 8
HBase所需要的版本兼容
Pinpoint Version HBase 0.94.x HBase 0.98.x HBase 1.0.x HBase 1.2.x HBase 2.0.x
1.0.x yes no no no no
1.1.x no not tested yes not tested no
1.5.x no not tested yes not tested no
1.6.x no not tested not tested yes no
1.7.x no not tested not tested yes no
1.8.x no not tested not tested yes no
Pinpoint Version HBase 0.94.x HBase 0.98.x HBase 1.0.x HBase 1.2.x HBase 2.0.x
Agent – Collector所需要的版本兼容
Agent Version Collector 1.0.x Collector 1.1.x Collector 1.5.x Collector 1.6.x Collector 1.7.x Collector 1.8.x
1.0.x yes yes yes yes yes yes
1.1.x not tested yes yes yes

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值