MyPerf4JJava 方法性能监控和统计工具
MyPerf4J是什么?
一个针对高并发、低延迟应用设计的高性能、无侵入的Java方法性能监控和统计工具。
受 [perf4j](https://github.com/perf4j/perf4j) 和 [TProfiler](https://github.com/alibaba/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](https://grafana.com/dashboards/6991)进行数据展示
评论