• Pinpoint--基础--01--介绍


    Pinpoint–基础–01–介绍


    1、背景

    1.1、以前的网络架构

    1. 只有2层(web服务器和数据库),3层(web服务器,应用服务器和数据库)。
    2. 遇到系统问题,例如系统失败或者性能问题,只要分析2到3个组件就可以找到问题。

    1.2、现在的网络架构

    1. n层网络架构
      1. 系统的复杂度因此提升
      2. 系统越复杂,越难解决问题
    2. 遇到系统问题,例如系统失败或者性能问题,需要调查大量的组件和服务器。非常难解决问题。

    1.3、解决现在网络架构的系统

    为了解决复杂架构下的拓扑解析与性能分析,pinpoint应运而生。

    2、pinpoint介绍

    1. 是一款 APM监控工具(Application Performance Management/应用性能管理)
    2. 基于java编写
    3. 用于 大规模分布式系统 的监控,是 分析 大规模分布式系统 的平台
      1. 基于google Dapper开发,目标就是为n(n>=1)层架构开发新的跟踪平台,为n层架构的系统 提供 处理大量跟踪数据 的 解决方案
      2. 能够对 基于java的 大规模分布式系统和应用 做调用链的跟踪
    4. 提供了一个web页面 展示 分布式系统的拓扑图 以及 系统这各个组件之间关系

    3、特点

    1. 分布式事务追踪,跟踪跨分布式应用的消息
    2. 自动检测应用拓扑,帮助你搞清楚应用的架构
    3. 水平扩展,以便支持大规模服务器集群
    4. 提供代码级别的可见性,以便轻松定位失败点和瓶颈
    5. 提供字节码增强技术,添加新功能无需修改代码
    6. 安装探针不需要修改哪怕一行代码及trace server端部署简单,支持hdfs存储
    7. 具有简单的阀值触发报警功能
    8. 移植性比较强的,会比较讨人喜欢(相比cat)
    9. 自定义插件功能(参考https://github.com/naver/pinpoint/wiki/Pinpoint-Plugin-Developer-Guide)

    4、优势

    4.1、非侵入式

    不需要修改应用的代码,即可完成agent的部署。

    4.2、资源消耗小

    对性能影响最小,总体资源消耗只提高了3%左右。

    5、功能

    5.1、服务拓扑图

    1. 对整个系统中应用的调用关系进行了可视化的展示
    2. 单击某个服务节点,可以显示该节点的详细信息,比如当前节点状态、请求数量等

    5.2、实时活跃线程图

    1. 监控应用内活跃线程的执行情况,对应用的线程执行性能可以有比较直观的了解

    5.3、请求响应散点图

    1. 以时间维度进行请求计数和响应时间的展示,拖过拖动图表可以选择对应的请求查看执行的详细情况

    5.4、请求调用栈查看

    分布式环境中每个请求提供了代码维度的可见性,可以在页面中查看请求针对到代码维度的执行详情,帮助查找请求的瓶颈和故障原因。

    5.5、应用状态、机器状态检查

    通过这个功能可以查看相关应用程序的其他的一些详细信息,比如CPU使用情况,内存状态、垃圾收集状态,TPS和JVM信息等参数。

  • 相关阅读:
    Excel VBA教程之如何在功能区中显示 Excel 开发人员选项卡,启用vba(教程含源码)
    【Python数据科学快速入门系列 | 09】Matplotlib数据关系图表应用总结
    Two-Stream Consensus Network论文阅读
    FastAPI 学习之路(十六)Form表单
    ServletContext、request、response
    每日一题-字典
    nginx部署vue前端项目,访问报错500 Internal Server Error
    Xtrabackup将本地数据迁移上云
    tabs组件封装
    黑马笔记---Set系列集合
  • 原文地址:https://blog.csdn.net/zhou920786312/article/details/127935951