MyPerf4J - Java 方法性能监控和统计工具


BSD-3
跨平台
Java

软件简介

MyPerf4J是什么?

一个针对高并发、低延迟应用设计的高性能、无侵入的Java方法性能监控和统计工具。
perf4j
TProfiler启发而来。

MyPerf4J具有以下几个特性:
无侵入: 采用JavaAgent方式,对应用程序完全无侵入,无需修改应用代码
高性能: 性能消耗非常小,每次统计只花费73ns,可以在生产环境长期使用
低内存: 采用内存复用的方式,整个生命周期只产生极少的临时对象,不影响应用程序的GC
高精度: 采用纳秒来计算响应时间
* 高实时: 支持秒级监控,最低1s!

MyPerf4J能做什么?

MyPerf4J可以统计以下几个性能指标:

  • RPS: 每秒请求数

  • Count: 总请求数

  • RT: 方法响应时间

    • TP: Top百分数(Top Percentile)

    • TP90: 在一个时间段内(如1分钟),统计该方法每次调用所消耗的时间,并将这些时间按从小到大的顺序进行排序,取第90%的那个值作为TP90值;

    • Avg: 方法平均响应时间

    • Min: 方法最小响应时间

    • Max: 方法最大响应时间

    • StdDev: 方法响应时间的标准差

    • TP50, TP90, TP95, TP99, TP999, TP9999, TP99999, TP100

可视化性能指标

目前MyPerf4J已提供Grafana Dashboard进行数据展示