当前位置: 欣欣网 > 码农

3.2K star!一个高性能、无侵入的性能监控和统计工具,纯Java开发必备!

2024-02-01码农

* 戳上方蓝字「 开源先锋 」关注我

推荐阅读:


大家好,我是开源君!

服务器监控对于网站的正常运行非常重要,它能够帮助我们及时发现问题并采取相应的措施。

今天开源君向大家推荐一款功能强大且易于使用的性能监控和统计工具 -- MyPerf4J

简介

MyPerf4J 是一个高性能、无侵入的 Java 方法性能监控和统计工具,专为高并发、低延迟应用程序设计。它使用 Java 字节码框架 ASM 来收集方法性能数据,而不会修改应用程序的源代码。

MyPerf4J 支持多种监控指标,包括方法调用时间、方法调用次数、方法调用堆栈、方法调用上下文等。它还支持多种配置选项,可满足各种需求。

性能特色

MyPerf4J 具有以下性能特色:

  • 高性能:使用 ASM 来收集性能数据,而不会修改应用程序的源代码。这使得它非常高效,不会影响应用程序的性能。

  • 无侵入性:MyPerf4J 是无侵入性的,这意味着它不会修改应用程序的源代码。这使得它非常易于使用和部署。

  • 低内存:采用内存复用的方式,整个生命周期只产生极少的临时对象,不影响应用程序的 GC。

  • 高精度:采用纳秒来计算响应时间。

  • 高实时:支持秒级统计,最低统计粒度为 1 秒,并且是全量统计,不丢失任何一次记录。

  • 快速使用

    1、下载文件

    直接项目主页下载最新版本的文件MyPerf4J-ASM.zip,目前版本是3.4.0

    下载后直接解压,修改解压出的 MyPerf4J.properties 配置文件中 app_name、metrics.log.xxx 和 filter.packages.include 的配置值

    文件里面的注释非常详细,按自身实际情况修改即可。

    2、启动运用

    采用 JavaAgent 配置方式,我们应用的 JVM 启动参数里需要加上两个参数,路径改为自己的。

    -javaagent:/path/to/MyPerf4J-ASM.jar
    -DMyPerf4JPropFile=/path/to/MyPerf4J.properties

    启动成功后,可以在 /path/to/log/method_metrics.log 看到输出的日志

    想卸载的话,在 JVM 启动参数中去掉上述两个参数,重启即可。

    3、效果演示 MyPerf4J 可以监控数十个指标,,这些指标是实时采集和展示的。

    以下是挑选的部分指标:

    总的来说,MyPerf4J 是一个强大的工具,可用于监控 Java 应用程序的性能。它易于使用,并且不会对应用程序的性能产生重大影响。

    更多项目细节功能,可以自行到项目地址进行探索:

    项目地址:
    https://github.com/LinShunKang/MyPerf4J