一个针对高并发、低延迟应用设计的高性能 Java 性能监控和统计工具,开发者必备!(带私活)

 背景

好的监控工具对于我们开发来说可谓是左膀右臂,而MyPerf4J正是这样一个针对高并发、低延迟应用设计的高性能 Java 性能监控和统计工具

它能够帮助我们在Java应用中快速定位性能瓶颈、快速定位故障原因,让我们的时间花在解决问题上,而不是找问题上。

图片

根据官网介绍,MyPerf4J拥有众多优秀的特点:

  • 高性能: 单线程支持每秒 1600 万次 响应时间的记录,每次记录只花费 63 纳秒

  • 无侵入: 采用 JavaAgent 方式,对应用程序完全无侵入,无需修改应用代码

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

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

总之MyPerf4J 为每个应用收集数十个监控指标,所有的监控指标都是实时采集和展现的。让问题在监控面前无所遁形。

快速使用

心动不如行动,我们直接上手体验。

官网地址:https://github.com/LinShunKang/MyPerf4J

1、下载文件

我们下载最新版本的文件MyPerf4J-ASM.zip,截止目前版本是3.2.0

下载地址:https://github.com/LinShunKang/MyPerf4J/archive/refs/tags/3.2.0.zip

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

里面注释很详细,可以按需修改。

2、启动运用

MyPerf4J 采用 JavaAgent 配置方式,透明化接入应用,对应用代码完全没有侵入。

我们应用的 JVM 启动参数里加上两个参数,最后命令如下格式:记得改成自己的路径

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

启动成功之后,可以在/path/to/log/method_metrics.log看到我们的监控日志:

图片

如果想卸载的话,直接在 JVM 启动参数中去掉上面加的两个参数,重启即可卸载此工具。

3、效果

MyPerf4J 可以监控数十个指标,以下是开源圈挑选部分指标:

图片

图片

总结

总的来说MyPerf4J 监控指标基本满足要求,对代码的侵入也基本忽略不计,更多介绍以及功能可以直接参考官网。

最后在贴上地址:

github代码:https://github.com/LinShunKang/MyPerf4J

写在最后(私活源码)

推荐一个后台管理系统。功能完整,代码结构清晰。值得推荐。

项目介绍

本项目系统是一款基于 SpringBoot + Bootstrap 的极速后台开发框架,可以用于所有的 Web 应用程序,易读易懂。RuoYi 支持集群,支持多数据源,支持分布式事务,拥有完善的权限管理。页面美观,完全响应式布局让你无论是电脑、平板还是手机等,都可随意使用。

图片

运行系统

  1. 首先我们将项目下载到本地,在 Gitee 下载页面下载解压到工作目录。

  2. 导入到 Eclipse,菜单 File -> Import,然后选择 Maven -> Existing Maven Projects,点击 Next > 按钮,选择工作目录,然后点击 Finish 按钮,即可成功导入。

  3. 创建数据库 ry 并导入数据脚本 ry_2021xxxx.sqlquartz.sql

  4. 打开项目运行 com.ruoyi.RuoYiApplication.java,出现如下图表示启动成功。

(♥◠‿◠)ノ゙ 若依启动成功 ლ(´ڡ`ლ)゙
.-------. ____ __
| _ _ \ \ \ / /
| ( ' ) | \ _. / '
|(_ o _) / _( )_ .'
| (_,_).' __ ___(_ o _)'
| |\ \ | || |(_,_)'
| | \ `' /| `-' /
| | \ / \ /
''-' `'-' `-..-'

  1. 最后打开浏览器,输入:(http://localhost:80 (opens new window)) (默认账户/密码: admin/admin123 )若能正常登陆即说明搭建成功。

内置功能

本项目系统内置了多种后台管理的功能,包含系统管理、系统监控、系统工具。

系统管理
  • 用户管理:用户是系统操作者,该功能主要完成系统用户配置。

  • 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。

  • 菜单管理:配置系统菜单,操作权限,按钮权限标识等。

  • 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。

  • 岗位管理:配置系统用户所属担任职务。

  • 字典管理:对系统中经常使用的一些较为固定的数据进行维护。

  • 参数管理:对系统动态配置常用参数。

  • 通知公告:系统通知公告信息发布维护。

  • 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。

  • 登录日志:系统登录日志记录查询包含登录异常。

系统监控
  • 在线用户:当前系统中活跃用户状态监控。

  • 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。

  • 服务监控:监视当前系统 CPU、内存、磁盘、堆栈等相关信息。

  • 缓存监控:对系统的缓存查询,查看、清理等操作。

系统工具
  • 表单构建:拖动表单元素生成相应的HTML代码。

  • 代码生成:前后端代码的生成(java、html、xml、sql)支持 CRUD 下载 。

  • 系统接口:根据业务代码自动生成相关的 api 接口文档。

项目介绍

相信大家很多人都被公司领导要求过,说让大家来开发一个微信公众号的后台系统吧,大家是不是对微信这个各种繁琐的条件弄得非常头疼,今天给大家分享出一块源代码,大家以后如果有需要的,可以直接拿过来复制一下使用呦。

本项目系统是一个支持公众号管理系统,支持多公众号接入。本项目提供公众号菜单、自动回复、公众号素材、简易CMS、等管理功能,请注意本项目仅为管理后台界面,需配合后端程序wx-api一起使用。

项目简介

本项目系统是一个微信公众号管理系统,目前主要实现了如下功能:

● 公众号菜单管理
● 消息自动回复
● 素材管理
● 模板消息
● 粉丝管理

同时它提供了如下跟公众号无关的功能

● CMS文章管理
● 对象存储
● 权限管理(管理后台菜单权限、接口权限、角色权限)

技术选型

  • 核心框架:Spring Boot

  • 安全框架:Apache Shiro

  • 持久层框架:MyBatis-Plus

  • 公众号开发框架:WxJava

  • 后端脚手架:renren-fast

  • 页面交互:Vue2.x

  • UI框架:ElementUI

  • 管理后台界面模板:renren-fast-vue

  • 富文本编辑器:tinymce5

功能演示

           

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

图片

源码获取方式:

​扫码关注本号,后台回复 私活

扫码关注本号,后台回复 私活

持续关注本号,分享更多私活源码

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值