Pinpoint源码解析(一)

作者: 我是嘻哈大哥 | 来源:发表于2017-05-19 15:38 被阅读995次

    Pinpoint 是用 Java 编写的APM(应用性能管理)工具,用于大规模分布式系统。在Dapper之后,Pinpoint提供了一个解决方案,以帮助分析系统的总体结构以及分布式应用程序的组件之间是如何进行数据互联的。

    安装agent是无侵入式的

    对性能的影响最小(只增加约3%资源利用率)

    支持的模块:

    JDK 6+

    Tomcat 6/7/8, Jetty 8/9

    Spring, Spring Boot

    Apache HTTP Client 3.x/4.x, JDK HttpConnector, GoogleHttpClient, OkHttpClient, NingAsyncHttpClient

    Thrift Client, Thrift Service

    MySQL, Oracle, MSSQL, CUBRID, DBCP, POSTGRESQL

    Arcus, Memcached, Redis

    iBATIS, MyBatis

    gson, Jackson, Json Lib

    log4j, Logback

    构建要求:

    JDK 6 installed

    JDK 8 installed

    Maven 3.2.x+ installed

    JAVA_6_HOME environment variable set to JDK 6 home directory.

    JAVA_7_HOME environment variable set to JDK 7+ home directory.

    JAVA_8_HOME environment variable set to JDK 8+ home directory.

    架构

    相关截图:

    Pinpoint的特点如下:

    分布式事务跟踪,跟踪跨分布式应用的消息

    自动检测应用拓扑,帮助你搞清楚应用的架构

    水平扩展以便支持大规模服务器集群

    提供代码级别的可见性以便轻松定位失败点和瓶颈

    使用字节码增强技术,添加新功能而无需修改代码

    安装探针不需要修改哪怕一行代码及trace server端部署简单,支持hdfs存储

    具有简单的阀值触发报警功能

    移植性比较强的,会比较讨人喜欢(相比cat)

    插件化功能可扩展(https://github.com/naver/pinpoint/wiki/Pinpoint-Plugin-Developer-Guide)

    相关文章

      网友评论

        本文标题:Pinpoint源码解析(一)

        本文链接:https://www.haomeiwen.com/subject/yxsyxxtx.html