Pinpoint 是用 Java 編寫的APM(應(yīng)用性能管理)工具财松,用于大規(guī)模分布式系統(tǒng)瘪贱。在Dapper之后,Pinpoint提供了一個(gè)解決方案,以幫助分析系統(tǒng)的總體結(jié)構(gòu)以及分布式應(yīng)用程序的組件之間是如何進(jìn)行數(shù)據(jù)互聯(lián)的菜秦。
安裝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
構(gòu)建要求:
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.
架構(gòu)
相關(guān)截圖:
Pinpoint的特點(diǎn)如下:
分布式事務(wù)跟蹤,跟蹤跨分布式應(yīng)用的消息
自動檢測應(yīng)用拓?fù)渑缁В瑤椭愀闱宄?yīng)用的架構(gòu)
水平擴(kuò)展以便支持大規(guī)模服務(wù)器集群
提供代碼級別的可見性以便輕松定位失敗點(diǎn)和瓶頸
使用字節(jié)碼增強(qiáng)技術(shù),添加新功能而無需修改代碼
安裝探針不需要修改哪怕一行代碼及trace server端部署簡單访锻,支持hdfs存儲
具有簡單的閥值觸發(fā)報(bào)警功能
移植性比較強(qiáng)的褪尝,會比較討人喜歡(相比cat)
插件化功能可擴(kuò)展(https://github.com/naver/pinpoint/wiki/Pinpoint-Plugin-Developer-Guide)