大家好,我是爱撸代码的开源大叔!
服务器监控对于网站的运行至关重要,它可以帮助您及时发现问题,并采取相应的措施。服务器监控可以帮助您监控服务器的运行状况,确保服务器正常运行。此外,服务器监控还可以帮助您监控服务器上的应用程序和数据库,确保应用程序和数据库的正常运行。
今天大叔给大家推荐一款好用的性能监控和统计工具 – MyPerf4J。
功能特性
- 高性能:单线程1600 万次/秒 ,每次记录花费 63 纳秒
- 无侵入:采用 JavaAgent 方式,不用修改应用代码
- 高实时: 支持秒级统计,最低统计粒度为 1 秒,是全量统计,不丢失任何一次记录
- 监控指标:JVM Metrics和 Method Metrics,具体包括Thread,Memory,ByteBuff,GC,Class,Compilation,FileDescriptor,RPS,Count,Avg,Min,Max,StdDev,TP50, TP90, TP95, TP99, TP999, TP9999, TP100等指标
安装部署
下载并解压 MyPerf4J-ASM.zip
修改
MyPerf4J.properties
配置文件中app_name
、metrics.log.xxx
和filter.packages.include
的配置值在 JVM 启动参数里加上两个参数:
1
2-javaagent:D:\\MyPerf4J-ASM-3.3.0-SNAPSHOT\\MyPerf4J-ASM-3.3.0-SNAPSHOT.jar
-DMyPerf4JPropFile=D:\\MyPerf4J-ASM-3.3.0-SNAPSHOT\\MyPerf4J.properties下载安装InfluxDB v2.x,并创建buckets,命名为MyPerf4J
修改MyPerf4J.properties配置文件
1
2
3
4
5
6
7
8metrics.exporter = http.influxdb
influxdb.version=2.1
influxdb.orgName=org #根据实际配置修改
influxdb.host=127.0.0.1
influxdb.port=8086 #根据实际配置修改
influxdb.username=test #根据实际配置修改
influxdb.password=12345678 #根据实际配置修改
influxdb.database=xxxx #根据实际配置修改,是bucket的名称安装Grafana,选择版本8.4.0
配置时注意:
Grafana 中的数据源名称是 InfluxDB,Query Language 是 Flux
修改 JVM Variables:
1 | # Application |
监控效果
项目地址
1 | https://github.com/LinShunKang/MyPerf4J |
总结
MyPerf4J 是一个高并发、低延迟的高性能 Java 性能监控和统计工具。支持 log 文件和 InfluxDB 数据存储,在实际中使用InfluxDB 比较方便,可以使用 Grafana 可视化实时监控服务器,感兴趣的小伙伴赶快去试试吧。
写在最后
欢迎加入开源小分队读者交流群,聊天学习摸鱼为主,不定时会分享一些技术要点和优质学习资源,有一群有趣有料的小伙伴在等你哦!
进群方式:开源小分队
公众号后台回复888
,按提示操作即可进群。
问君能有几多愁,开源项目解千愁,我们下期再见!
大家的点赞、收藏和评论对大叔非常重要,如文章对你有帮助还请转发支持下,谢谢!