返回顶部
首页 > 资讯 > 后端开发 > Python >关于SpringBoot启动速度慢的原因总结
  • 895
分享到

关于SpringBoot启动速度慢的原因总结

Python 官方文档:入门教程 => 点击学习

摘要

目录SpringBoot启动速度慢的原因前提条件原因一原因二原因三解决方法如何提高springBoot应用的启动速度总结SpringBoot启动速度慢的原因 现在Spring Boo

SpringBoot启动速度慢的原因

现在Spring Boot架构可以说是非常流行,不会你都不好意思说你是做java的。可是它火归火,也有一些小问题需要咱们去注意。

如果是单体项目,并且在启动速度方面没有任何要求,那么请忽略。

下面进入主题,在什么情况下spring boot的项目启动会变慢呢

前提条件

启动项目的机器硬件配置不能拖后腿,否则你说项目启动慢,项目还觉得机器不行呢…

比如网络,内存大小,CPU核心数等,不要求太高,至少也要够用吧

抛开各种人为因素,例如各种连接时间较长,其他组件启动较慢导致等待…

原因一

项目中使用的无用配置太多。例如在一个最简单的WEB中,你还加入了其他各种Maven配置,并且将他们配置到项目中(只是比较夸张的例子,这些配置加入都不用),然后项目本身也不懂,既然你配置了,那就加载呗。

一个花0.1秒,10个就1秒,100个就10秒了…以此类推,这一点就是最容易想明白的地方了。

原因二

spring boot的自动配置。自动配置是spring boot的一个特色,但是也是它启动慢的一个弊病。

没办法,通常好用功能全的东西,总会在一些地方上有缺陷。

上面说到无用的配置多,这里要说的就是spring boot它自己装配的东西太多。

你可以看到在spring boot的相关jar包里,都存放着spring.factories的文件,进去一看,大部分都是写了很多的类,它是实现spring boot自动装配的核心之一。

但是你仔细观察会发现,其实有很多类,你可能完全不用。

但有什么办法呢,不管你用不用,至少它都会给你检查一遍,这不也是花时间的地方吗?

原因三

项目精简程度不够。现在比较流行微服务的概念,我认为它的概念核心含义即为精简,单一,并且多数需要强调启动速度的地方也多是出自微服务的项目中。

一个微服务项目中,最好是在10秒以内能够启动完毕。但是多数是做不到的,原因在于项目拆分的还不够细。

你说一个接口启动快,还是10个快,或是更多,答案很明显。很多项目做到了大而全,所谓大而全就是功能很多,配置很齐全,各种可以扩展配置等,全面的不行不行的,但这意味着什么,你的配置多,有用没用先不管,至少需要编译和加载的类文件都会多出很多来,你说要这样的项目能启动快,怎么能启动快呢?

解决方法

  • 检查maven中是否无用的依赖太多
  • 比较复杂,使用spring-boot-maven插件debug启动,查看该项目中,使用了哪些配置,哪些配置没用,然后在启动类中直接注明只启动使用了的类,并且删掉@SpringBootApplication注解,手动填上@Configuration和@Import注解,并在@Import注解中加上那些配置的类。
  • 更换一些配置更快的依赖。例如,你使用A数据库连接池,功能全,配置多,但速度较慢,但是其实B连接池也能满足项目需求,但是功能相对较少,所以配置也少,启动更快,你是不是需要考A和B应该选一个。
  • 拆分出更精简的项目来独自运行,大而全意味着多而不精,精而简意味着少但是精通,它们速度,不言而喻。

如何提高SpringBoot应用的启动速度

1、减少@ComponentScan @SpringBootApplication 扫描类时候的范围

2、关闭 Spring Boot 的 JMX 监控,设置 spring.jmx.enabled=false

3、设置 JVM 参数 -noverify ,不对类进行验证

4、对非必要启动时加载的 Bean ,延迟加载

5、使用 Spring Boot 的全局懒加载

6、aop 切面尽量不使用注解方式,这会导致启动时扫描全部方法

7、关闭 endpoint 的一些监控功能

8、排除项目多余的依赖 jar

9、swagger 扫描接口时,指定只扫描某个路径下的类

10、Feign 客户端接口的扫描缩小包扫描范围

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 关于SpringBoot启动速度慢的原因总结

本文链接: https://lsjlt.com/news/212316.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 关于SpringBoot启动速度慢的原因总结
    目录SpringBoot启动速度慢的原因前提条件原因一原因二原因三解决方法如何提高SpringBoot应用的启动速度总结SpringBoot启动速度慢的原因 现在spring boo...
    99+
    2023-05-18
    SpringBoot启动 SpringBoot启动速度慢 SpringBoot启动速度慢原因
  • MySQL 查询速度慢的原因
    目录一、慢在哪?二、是否查询了不需要的数据1. 查询不需要的记录2. 多表关联时返回全部列3. 总是查询出全部列4. 重复查询相同的数据三、是否扫描了额外的记录1. 响应时间2. 扫描的行数和返回的行数3. 扫描的行...
    99+
    2022-06-01
    MySQL 查询 MySQL 查询速度慢
  • 云服务器速度慢的原因
    云服务器的速度取决于多方面的因素,例如服务器配置、网络连接、带宽和硬件设备等。如果您的云服务器配置较低或网络连接不稳定,您的云服务器将无法有效地处理大量的请求。 如果您使用的是私有云,那么您可以通过使用 VPS 托管的方式来加快云服务器的...
    99+
    2023-10-26
    速度慢 原因 服务器
  • 关于SpringBoot使用@Async的总结
    目录SpringBoot使用@Async总结如下方式会使@Async失效SpringBoot实现异步(Async)接口1. 启动类引入@EnableAsync注解2. 建立异步任务类...
    99+
    2024-04-02
  • win10启动慢的原因有哪些
    Win10启动慢的原因可能有以下几种:1. 软件冲突: 安装了过多的软件或者一些软件之间冲突,会导致系统启动变慢。2. 启动项过多:...
    99+
    2023-08-30
    win10
  • vue使用fengMap速度慢的原因分析
    目录使用fengMap速度慢原因vue在使用中的一些小技巧1. 多图表resize事件去中心化2. 全局过滤器注册3. 全局组件注册4. 不同路由的组件复用5. 高阶组件6. 路由根...
    99+
    2024-04-02
  • windows下载速度慢的原因有哪些
    本篇内容主要讲解“windows下载速度慢的原因有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“windows下载速度慢的原因有哪些”吧!下载速度慢的原因:一、网络最小宽带 这应该是造成网速...
    99+
    2023-07-01
  • python运行速度慢的原因有哪些
    Python运行速度慢的主要原因有以下几个: 解释性语言:Python是一种解释性语言,而不是编译性语言,这意味着每行代码都需要...
    99+
    2023-10-25
    python
  • 云服务器速度慢的原因分析
    云服务器是一种虚拟的存储和计算服务,它可以在不同的设备上运行,但是速度慢是其中很常见的一个问题。以下是一些可能导致云服务器速度变慢的原因: 网络连接问题:有时云服务器上的数据传输速度可能比预期慢。这可能是因为连接不稳定或网络拥堵,导致延...
    99+
    2023-10-26
    速度慢 原因 服务器
  • windows下载速度慢上传速度快的原因是什么
    本文小编为大家详细介绍“windows下载速度慢上传速度快的原因是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“windows下载速度慢上传速度快的原因是什么”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。原...
    99+
    2023-07-01
  • 总结12个MySQL慢查询的原因分析
    目录1. SQL 没加索引2. SQL 索引不生效2.1 隐式的类型转换,索引失效2.2 查询条件包含 or,可能导致索引失效2.3. like 通配符可能导致索引失效2.5 在索引...
    99+
    2022-11-13
    MySQL慢查询原因分析 MySQL慢查询
  • 关于vue中媒体查询不起效的原因总结
    目录vue媒体查询不起效的原因错误一错误二错误三错误四错误五vue使用media媒体查询vue媒体查询不起效的原因 vue中 用less或scss都可以使用媒体查询不生效无非以下几种...
    99+
    2024-04-02
  • 美国原生vps速度变慢的原因有哪些
    美国原生vps速度变慢的原因有:1、网络问题,如美国VPS带宽不足、网络出现波动导致速度变慢;2、美国VPS中后台加载程序过多、系统资源不足导致速度变慢;3、美国VPS中了木马病毒导致速度变慢;4、美国VPS中防火墙过多使用导致网速变慢;5...
    99+
    2024-04-02
  • 国外vps速度变慢的原因有哪些
    国外vps速度变慢的原因有:1、国外vps被DDOS攻击,导致访问速度变慢或无法访问网站,需要好的硬件配置进行防御;2、国外vps中病毒,只能重做系统才能解决;3、国外vps距离大陆较远,国际线路访问慢,有一定的网络延迟。具体内容如下:国外...
    99+
    2024-04-02
  • 电脑上网速度慢的原因有哪些
    本篇内容主要讲解“电脑上网速度慢的原因有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“电脑上网速度慢的原因有哪些”吧!一:电脑系统病毒,引起病毒大量占用宽带引起这种情况最常见的就是以前上网速...
    99+
    2023-06-28
  • 电脑开机速度慢的原因有哪些
    这篇文章主要介绍“电脑开机速度慢的原因有哪些”,在日常操作中,相信很多人在电脑开机速度慢的原因有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”电脑开机速度慢的原因有哪些”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-28
  • vue使用fengMap速度慢的原因是什么
    这篇文章主要介绍“vue使用fengMap速度慢的原因是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue使用fengMap速度慢的原因是什么”文章能帮助大家解决问题。使用fengMap速度慢...
    99+
    2023-06-30
  • 导致Golang速度变慢的原因有哪些
    这篇文章主要讲解了“导致Golang速度变慢的原因有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“导致Golang速度变慢的原因有哪些”吧!内存分配内存分配是Golang速度变慢的主要原...
    99+
    2023-07-05
  • 云服务器速度慢的原因是什么
    云服务器的速度取决于多重因素,包括服务器的硬件配置、网络连接速度、服务器的处理能力和系统优化等。以下是云服务器速度慢的几个常见原因及解决方案: 硬件配置不匹配:云服务器一般都配备了高性能的硬件设施,但是由于服务器配置和系统优化等问题,导...
    99+
    2023-10-26
    速度慢 原因 服务器
  • 云服务器速度慢的原因有哪些
    云服务器的速度慢可能是由于以下原因造成的: 网络连接问题:云服务器需要经常与互联网连接,而网络连接问题可能导致服务器无法与客户端或其他云计算服务正常通信。 服务器配置或操作系统问题:服务器配置或操作系统可能不正确,或者可能存在安全漏洞,...
    99+
    2023-10-26
    速度慢 原因 服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作