作者 | Tim Anderson
编译 | 言征
出品 | 51CTO技术栈(微信号:blog51cto)
VMWare已经宣布了Spring Boot 3.2的全面可用性,这是对这个流行的开源Java框架的重大更新,截至撰写本文时,最新版本是release Candidate 2.0。
1、Spring Boot3.2 新特性
Spring Boot 3.2是第一个支持Java 21虚拟线程(也称为Project Loom)的产品,Java 21 虚拟线程将会对其性能和效率产生重大影响。根据VMWare开发者倡导者Josh Long的说法,在Java 21之前,每个新线程都使用2MB的RAM,而虚拟线程是轻量级的。
同时,该版本还支持使用Spring Boot和虚拟线程的GraalVM本机映像编译,大大缩短了启动时间。
另一个新功能是SSL热重新加载。这使得嵌入式web服务器,特别是Tomcat和Netty,能够在不需要重新启动的情况下更新SSL证书。安装新证书后,现有连接将使用旧证书,但新连接将使用替换证书进行保护。
VMWare表示,Spring Boot的使用量正在显著增长,并声称根据年度VMWare春季状况报告,它“连续5年同比增长50%”。
2、Spring Boot:越简单越受欢迎
Spring和运行在其上的Spring Boot,二者迭代的历史都证明了一个规律:即务实的方法通常会战胜不必要的复杂性。
Spring源于Rod Johnson在2002年写的一本名为《Expert One on One J2EE Design and Development》的书,他在书中描述了Java 2 EE(Enterprise Edition)中的错误,他认为这些错误过于复杂,是许多失败项目的原因。这本书包含了一个示例项目,避免了不必要的EJB(EnterpriseJavaBeans)使用,并将其发展为Spring框架。
Spring 1.0于2003年发布。Spring Boot的第一个版本旨在简化平台。发布的帖子解释道:“它对Spring平台有着独到的看法,这样新用户和现有用户就可以快速获得他们需要的东西。”
Spring Boot 1.0于2014年4月首次发布。即便快进到今天,Spring Boot依旧是许多Java项目的默认选择。
3、Spring AI 正在预览中
人工智能呢?Spring AI目前正在预览中,旨在为包括OpenAI和Azure OpenAI在内的服务提供抽象,这让人想起微软的.NET语义内核。命令:Spring boot add AI将向现有项目添加库,以支持聊天机器人等AI功能。根据这些文档,“该项目的成立相信,下一波Generative AI应用程序将不仅面向Python开发人员,而且将在许多编程语言中无处不在。”