Spring Bean耗时分析工具

背景

  • 部分业务在项目启动时耗时过高,但无法排查优化,需要可以统计各个bean创建耗时,并提供过滤功能过滤显示耗时过高的bean。

解决

xml 复制代码
<dependency>
    <groupId>com.maciejwalkowiak.spring</groupId>
    <artifactId>spring-boot-startup-report</artifactId>
    <version>0.2.0</version>
    <optional>true</optional>
</dependency>

显示字段说明:

字段名 字段说明
Name 当前记录所处的阶段,spring.beans.instantiate为bean的创建实例化
duration 构建此bean耗费的时间,单位ms
durationWithChildren 构建此bean以及所有依赖bean耗费的时间,单位ms
Details 具体信息,包含bean名称等
  • 页面搜索框Minimum duration为使用durationWithChildren进行过滤,可以进行时间上的筛查
  • 上面的开源项目有个缺陷是当项目中 bean 比较多的时候,前端展示页面会出现卡顿,因为前端页面啥的都是在jar包里面。建议把项目拷贝下来后,重新在本地打个包更改下坐标名
相关推荐
代码什么用1 小时前
Spring基础使用
java·后端·spring
代码什么用1 小时前
Spring对IoC的实现
数据库·spring
Su米苏2 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
明月_清风2 小时前
Deno 终局来了:从挑战 Node 到被 Cloudflare 收编
前端·后端·node.js
码云数智-园园2 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
老板一杯拿铁2 小时前
Java 异常体系详解:从字节码原理到最佳实践
java
蜗牛互联网2 小时前
Java 17 HttpClient调用文件转写API的超时与失败回退
java·人工智能·后端
禾小西2 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis
我不是阵雨3 小时前
JDK 21虚拟线程Pinning陷阱:一文拔钉解困
java·开发语言
小卡车5553 小时前
java反射、自定义注解的应用(自定义分页)
java