浅谈SpringBoot优化技巧
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
Bean优化
1.当使用@SpringBootApplication会默认注册pom文件中拥有的为bean
默认情况下自动获取应用配置信息,会加载一些不需要的beans 增加cpu消耗 beanNames个数:261 堆内存:150-220M
2.使用@Configuration和@EnableAutoConfiguration
beanNames个数:158
3.使用【不建议使用】
使用mvn spring-boot:run -Ddebug 根据提示的需要装配的,然后使用@import方式配置,只用装配30个左右组件就能启动 注解解释: @EnableAutoConfiguration会自动加载可能需要的配置信息 在知道需要的beans的情况下,可以使用@Import方式去配置
4.生产环境下禁止xml校验
继承XmlWebApplicationContext复写init 在web.xml文件中配置 <context-param> <param-name>contextClass</param-name> <param-value>com.example.CustomXmlWebApplicationContext</param-value> </context-param>
5.减少自动扫描,尽量使用配置形式,减少初始化扫描时间
6.使用延迟初始化的bean 【Using Lazy-Initialized Beans】
lazy-init属性为true spring初始化bean就能立即发现其错误,并进行错误处理,造成的负面效应增加了应用程序的加 载时间
优化方案:
【jvisualvm】 1.不适用默认方式,采用第二种减少注册bean数量,项目中需要 的bean,采用注解方式在配置类中注册。 2.tomcat8,新特性8.5.6 Servlet 3.1、JSP 2.3、EL 3.0 Servlet 3.1实现了非阻塞式的I/O通信,性能得到 巨大的改进
以上就是本文关于springboot的介绍和优化的全部内容,希望对大家有所帮助。
相关文章
ScheduledThreadPoolExecutor巨坑解决
这篇文章主要为大家介绍了使用ScheduledThreadPoolExecutor遇到的巨坑解决示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-02-02java 实现web项目启动加载properties属性文件
这篇文章主要介绍了java 实现web项目启动加载properties属性文件,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2021-08-08解决springmvc+mybatis+mysql中文乱码问题
这篇文章主要介绍了解决java中springmvc+mybatis+mysql中文乱码问题的相关资料,需要的朋友可以参考下2015-09-09详解Spring Cloud Netflix Zuul中的速率限制
这篇文章主要介绍了详解Spring Cloud Netflix Zuul中的速率限制,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧2018-11-11
最新评论