MySQL驱动扯后腿?Spring Boot用虚拟线程可能比用物理线程还差
之前已经分享过多篇关于Spring Boot中使用Java 21新特性虚拟线程的性能测试案例:
之前已经分享过多篇关于Spring Boot中使用Java 21新特性虚拟线程的性能测试案例:
就在今天凌晨,Spring Boot 3.2正式发布了!该版本是在Java 21正式发布之后的重要支持版本,所以在该版本中包含大量对Java 21支持的优化。
下面,我们分别通过Spring官方发布的博文和Josh Long长达80+分钟的介绍视频,一起认识一下Spring Boot 3.2最新版本所带来的全新内容。
早上看到一篇关于Spring Boot虚拟线程和Webflux性能对比的文章,觉得还不错。内容较长,我就不翻译了,抓重点给大家介绍一下这篇文章的核心内容,方便大家快速阅读。
作者采用了一个尽可能贴近现实操作的场景:
昨晚我们讲了Spring Boot 2.7开始不再推荐使用spring.factories了,今天早上公众号(程序猿DD)上也推了,然后收到了不少反馈。其中有个网友说:要维护两个文件,太麻烦了。
如果你是Spring Boot用户的话,一定有这样的开发体验,当我们要引入某个功能的时候,只需要在maven或gradle的配置中直接引入对应的Starter,马上就可以使用了,而不需要像传统Spring应用那样写个xml或java配置类来初始化各种Bean。
如果你有探索过这些Starter的原理,那你一定知道Spring Boot并没有消灭这些原本你要配置的Bean,而是将这些Bean做成了一些默认的配置类,同时利用/META-INF/spring.factories
这个文件来指定要加载的默认配置。
昨晚(5月19日),Spring Boot官方发布了一系列Spring Boot的版本更新,其中包括:
此版本包括74个bug修复、文档改进和依赖项升级,其中值得注意的新功能包括:
3月1日,Spring官方博客发布了一篇关于Spring Cloud Gateway的CVE报告。
其中包含一个高风险漏洞和一个中风险漏洞,建议有使用Spring Cloud Gateway的用户及时升级版本到3.1.1+、3.0.7+或采用其他缓解方法加强安全防护。
有涉及的小伙伴可以看看下面具体这两个漏洞的内容和缓解方法。
严重性:Critical
漏洞描述:使用Spring Cloud Gateway的应用程序在Actuator端点在启用、公开和不安全的情况下容易受到代码注入的攻击。攻击者可以恶意创建允许在远程主机上执行任意远程执行的请求。
距离Spring Boot 2.2.0的发布已经有一个半月左右时间,由于与之匹配的Spring Cloud版本一直没有Release,所以在这期间碰到不少读者咨询的问题都是由于Spring Boot和Spring Cloud版本不匹配导致。
很多时候,我们在学习或重建系统的时候都喜欢直接选用最高版本来开发,但是在使用Spring全家桶的时候,这样的选择不一定是最佳选择。主要还是由于Spring全家桶中各项目之间还存在一定的依赖关系。尤其是在大版本迭代期间,是我们尤其要注意的。比如,这次Spring Framework、Spring Boot、Spring Cloud的升级,是一次整体的大版本的升级,涵盖了Spring Framework 5.2、Spring Boot 2.2、Spring Cloud Hoxton。