Reactor Dysprosium-M1 现已可用

发布 | Stephane Maldini | 2019年5月15日 | ...

Reactor的第四代即将到来。我们团队感谢社区提供的大量反馈。在过去的一年中,我们显著扩展了我们的响应式产品线,包括R2DBCBlockHound。我们在Java生态系统中的采用情况非常出色,我们正在与包括微软和谷歌在内的主要公司合作。我们的Gitter常驻观众数量增加了一倍多,每天都有一些精彩的——您猜对了——响应式讨论。最后,Sergei Egorov已加入核心团队,我们没有停止扩张的计划!

Dysprosium-M1 已在我们的里程碑存储库中发布。它正在为更多正在进行中的更改铺平道路。值得注意的是,有2个特性正在被弃用,并将在里程碑阶段结束时评估是否移除。

  • EventLoopProcessor => TopicProcessorWorkQueueProcessorWaitStrategy:这些处理器已移至 reactor-extra 以供选择使用。它们需要 Unsafe 的可用性,鉴于现代JVM的限制,这使得它们相当小众。它们不仅可以在其他地方找到,而且还可以用等效的构造替换,例如带有 publishOnEmitterProcessor 和带有 runOnParallelFlux

  • Kotlin 扩展正在获得一个专用空间以进行进一步的实验。随着 coroutinesinlining 的最新发展,我们很高兴能够评估如何利用 Kotlin 来提供更流畅的开发体验。我们为本次实验设定的目标之一是提供一个专用API,该API将能够以Kotlin的简洁性编写自定义生产者和操作符。

即使有这些变化,我们也不认为会给我们的社区带来重大痛苦,但我们希望听取您的意见。

变更日志和发布说明

运行时性能

我们正在努力改进用户的整体体验,并全面提升我们的运行时效率。

  • reactor-netty 0.9.0.M1/0.8.8 在请求/响应 (HTTP) 场景中吞吐量提高了40%,在流式场景中至少提高了20%。更重要的是,内存管理得到了加强,以控制一些报告的内存问题,并且所需的 flush 操作数量大大减少(减少了3倍),这对于CPU使用来说是个好消息。
  • 对于 reactor-core 3.3.0,我们正在考虑使用基于代理的方法,逐步将调试拦截器移出关键路径。

Bismuth 终止支持

鉴于即将发布的 Dysprosium-RELEASE,我们的 reactor-core 3.1.xreactor-netty 0.7.x 系列将不再接收进一步的补丁。我们鼓励用户更新到 Californium 版本列车,它与 Spring Boot 2.1.xSpring Framework 5.1.x 匹配。

如果您已经在使用 Spring Boot 2.2.xSpring Framework 5.2.x,则需要使用 Dysprosium,包括 reactor-core 3.3.xreactor-netty 0.9.x

#趣闻 Dysprosium 是什么?它是一种以拉丁字母第四个字母开头的化学元素。它也意味着“难以获得”,因为它需要多次尝试才能分离出来。所以,请记住我的话,有了 Dysprosium,一切都会好起来的。

再次感谢您的宝贵意见,请加入我们的 Gitter,分享您的问题、故事或两者兼有!同时,我们正在向六月初的第二个里程碑迈进。

项目页面 | GitHub | 文档 | Stack Overflow | Gitter

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有