Spring Boot项目启动速度优化

1、配置自动配置排除列表,减少启动自动配置扫描,配置项spring.autoconfigure.exclude

2、启动类添加索引注解@Indexed,去除启动过程中 Components 的扫描步骤,直接从索引文件读取。

import org.springframework.stereotype.lndexed,

3、开启全局懒加载

优点:启动大幅增快

缺点:Bean 在业务访问的时候才加载,业务第一访问速度变慢(此缺点可以考虑注意点 2解决方案)

注意点:

  • 针对有依赖容器的工具类,需要增加@Lazy(faLse)和@Dependson 注解
  • 针对业务访问缓慢问题,可以选择在容器启动后自行做 Bean 加载,可以参考如下(此方案还是有缺点,自行体验)

4、开启部分懒加载,针对很少或者基本不会被访问的业务相关的 Bean,可以选择添加@Lazy注解开启懒加载

相关推荐
qfljg2 小时前
OpenRewrite 实战指南
java
Sylvia33.2 小时前
LOL实时数据接入深度解析:从WebSocket到完整数据模型
java·网络·python·websocket·网络协议
2601_962071577 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
zww89491118 小时前
酒馆预约系统开发实战:从需求分析到上线全流程指南
java·eclipse
zww894911110 小时前
匿名树洞系统开发实战:从需求分析到部署指南
java·eclipse
行百里er10 小时前
Gateway 上别硬塞 MVC:DeferredImportSelector 看菜下锅
spring boot·后端·开源
黑马程序员毕设12 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
木井巳12 小时前
【BFS/DFS 解决 FloodFill 算法】太平洋大西洋水流问题
java·算法·leetcode·深度优先·广度优先·宽度优先·推荐算法
白山编程大哥12 小时前
Java 集合算法:从排序、查找到底层原理的实战指南
java·python·算法
devpotato12 小时前
缓存与数据库更新顺序不一致问题
java·数据库·redis