Spring Boot 2.2 正式发布,大幅性能提高 + Java 13 支持

以前 Spring Boot 2.2没能按时发布,是因为 Spring Framework 5.2 的发布受阻而推迟。此次随着 Spring Framework 5.2.0 成功发布以后,Spring Boot 2.2 也紧跟其后,发布了第一个版本:2.2.0。下面就来一块儿来看看这个版本都更新了些什么值得咱们关注的内容。html

组件版本更新

这些Spring框架组件更新了依赖版本:git

  • Spring AMQP 2.2
  • Spring Batch 4.2
  • Spring Data Moore
  • Spring Framework 5.2
  • Spring HATEOAS 1.0
  • Spring Integration 5.2
  • Spring Kafka 2.3
  • Spring Security 5.2
  • Spring Session Corn

框架中涉及的第三方包也更新了依赖版本:github

  • Elasticsearch 6.7
  • Flyway 6.0
  • Jackson 2.10
  • JUnit 5.5
  • Micrometer 1.3
  • Reactor Dysprosium
  • Solr 8.0

大幅的性能提高

关于Spring Boot的性能问题是咱们常常在内容平台上看到吐槽的关键词。此次在Spring Boot 2.2中,针对性能这一点,作了大幅的优化。应用程序的启动速度将变得更快,内存占用也会变得更少。spring

同时,为了加快应用的启动,还增长一个全局延迟初始化的配置参数spring.main.lazy-initialization,这可让咱们的应用更快的完成启动动做,可是值得注意的是,延迟启动也会有下面这些反作用:框架

  • 应用在进行延迟初始化的时候,HTTP请求的处理会须要更长的时间
  • 本来可能在启动期出现的错误,将延迟到启动的运行期间出现

Java 13的支持

因为Spring Framework 5.2增长了对Java 13的支持,因此Spring Boot 2.2也天然增长了这一特性。同时,Spring Boot 2.2对于老版本的Java 十一、Java 8依然支持良好。因此,对于还在使用Java 8的用户也能够安心的升级使用。socket

不可变的 @ConfigurationProperties 绑定

配置属性如今支持基于构造函数的绑定,该绑定容许@ConfigurationProperties注解修饰的类是不可变的。能够经过使用@ConstructorBinding注解修饰@ConfigurationProperties类或其构造函数之一来启用基于构造函数的绑定。能够在配置属性绑定提供的构造函数参数上使用@DefaultValue和@DateTimeFormat之类的注释。函数

更多详细信息参阅文档:https://docs.spring.io/spring-boot/docs/2.2.0.RELEASE/reference/html/spring-boot-features.html#boot-features-external-config-constructor-bindingspring-boot

RSocket 支持

已为RSocket添加了自动化配置的starter实现:spring-boot-starter-rsocket。当项目依赖了spring-security-rsocket的时候,该starter还会自动配置Spring Security对RSocket的集成实现。性能

更多详细信息参阅文档:https://docs.spring.io/spring-boot/docs/2.2.0.RELEASE/reference/html//spring-boot-features.html#boot-features-rsocket学习

健康检查的分组支持

如今能够将Spring Boot Actuator中各类各样的健康指标实现分组。若是将应用程序部署到Kubernetes,一个典型的需求是您可能须要不一样组的健康指标来进行“liveness”和“readiness”的探测。这个时候,咱们就能够经过配置属性来定义不一样的分组,好比:下面建立了一个仅具备DataSource指示器的自定义组:

management.endpoint.health.group.custom.include=db复制代码

经过访问localhost8080/actuator/health/custom,就能够访问自定义的组了。

更多详细信息参阅文档:https://docs.spring.io/spring-boot/docs/2.2.0.RELEASE/reference/html//production-ready-features.html#health-groups

其余更新

Release Notes中还记录了许多其余更改和改进。读者能够经过下方连接查看更多更新内容:

https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.2-Release-Notes

参考资料

欢迎关注个人公众号:程序猿DD,得到独家整理的学习资源和平常干货推送。

若是您对个人专题内容感兴趣,也能够关注个人博客:didispace.com

相关文章
相关标签/搜索