一个超强的SpringBoot应用启动性能分析工具,跨平台支持Spring Bean异步初始化(带私活)

 背景

作为一名Java攻城狮,相信对SpringBoot绝对不陌生,毕竟当前技术栈创建项目普遍都是SpringBoot应用。

直接运行main方法,一个web应用立马启动,不用再去安装tomcat等等之类的web容器。

但是随着项目不断迭代,项目越来越庞大,启动耗时也一直在增加,这时面临着项目启动慢的问题。

看着SpringBoot的启动流程源码,一顿分析加百度,可能收效甚微,这时候需要一个利器帮你提提速。

所以今天小编给大家介绍一个SpringBoot应用启动性能的分析利器:Spring-Startup-Analyzer

图片

介绍

Spring Startup Ananlyzer 主要功能就是采集SpringBoot应用启动过程数据,生成交互式分析报告,用于分析Spring应用启动卡点,支持Spring Bean异步初始化,减少优化Spring应用启动时间,并且跨平台支持。

特性

  • 采集Spring应用启动数据,生成多样化的报告,如Bean耗时图、时序图,方法调用图等等

  • 跨平台多端支持, Windows、Mac、Linux 客户端通通实用。

快速使用

官方提供了手动安装一键脚本安装两种安装方式:

官网地址:https://github.com/linyimin0812/spring-startup-analyzer

我门采用手动下载方式,下载对应的包,然后解压即可

下载地址:https://github.com/linyimin0812/spring-startup-analyzer/releases/download/v3.0.0/spring-startup-analyzer.tar.gz

1、应用启动

我们项目是在IDEA中开发,所以直接VM options选项中添加参数即可(换成自己的jar包所在路径):

图片

然后启动项目即可。

在控制台看到输出======= spring-startup-analyzer finished, click http://localhost:8065 to visit details. ======,则可判断采集是否完成

我们直接点击这个链接就可以查看报告。

2、查看报告

出于项目隐私,我们直接看官方提供了一个实例报告地址:

https://linyimin-blog.oss-cn-beijing.aliyuncs.com/spring-satrtup-analyzer/hokage-20230618000928-192.168.0.101-analyzer.html

  • Spring Bean初始化详情

    图片

  • Spring Bean初始化时序图

    图片

  • 方法调用次数、耗时统计(支持自定义方法)

    图片

  • 应用未加载的jar包(帮助fatjar瘦身)

    图片

  • 应用启动过程线程wall clock火焰图(支持指定线程名称,不指定则采集全部线程) [

    图片

可以看到整个图表非常详细,我们可以针对报告进行自己业务优化即可

总结

总的来说Spring-Startup-Analyzer使用简单,操作简洁,但是生成的多样化图表对我们益处非常多,大大的缩短了我们排查的时间,可以说是我们测试环境中不可多得分析利器,最后有需求的同学可以尝一下,参与其中,感受他的的能力!!!

最后在贴上地址:

github代码:https://github.com/linyimin0812/spring-startup-analyzer 

写在最后(私活源码)

今天给大家分享一套基于Springboot+Vue仓库管理系统源码,在实际项目中可以直接复用。(免费提供,文末自取)

一、系统运行图(设计报告和接口文档)

1、登陆页面

2、物品信息管理

3、设计报告包含接口文档

二、系统搭建视频教程

源码免费领取方式

扫码关注本号,回复 仓库

扫码关注本号,回复 仓库 

持续关注,有更多私活源码免费分享

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值