Juergen Hoeller在SpringOne大会分享最新Spring 5.0发展蓝图:提供对Reactive支持

在拉斯维加斯举行的SpringOne Platform大会的第二日,Pivotal 公司首席工程师兼Spring框架项目负责人Juergen Hoeller给与会者分享了Spring框架的最新发展蓝图。

\\

Spring 4.0 Pivotal框架缩短了迭代期,大约会在每9-10个月进行一次主要功能发布。4.3版本已经在今年七月发布,预计该版本将成为Spring 4.x产品线的最终功能版本。该版本中进行了对于核心依赖注入框架本身的进一步改进,以及对于Spring MVC和网络层的改进。由于系统需求没有变更,因此该版本与JDK 6、7以及8都相互兼容,并可以运行在任何Servlet 2.5+容器上。

\\

Spring框架5.0版本作为第一个里程碑版本已经在今年的七月发布,候选版本预期将在十二月左右发布。GA版本也可能会在2017年第一季度发布。Spring 5.0主要基准有重大更新,将支持JDK 8+、Servlet 3.1+、JMS 2.0+、JPA 2.1+和JUnit 5。

\\

新版本发布的选取框功能将直接支持响应式网络应用程序,它来源于Reactor项目曾经实践的与RxJava的密切合作开发。

\\

响应式编程是非阻塞、事件驱动的应用程序,可处理一小部分的线程,背压这种反馈机制旨在保证生产者不会完全压盖过消费者。9和Spring 5采纳的Reactive Streams规范可以确保不同供应者能在各层以及各库之间相互通信。

\\

在Spring 5中,新的Spring Web Reactive网络框架取代了原有的Spring Web MVC。Spring Web Reactive支持@Controller编程模型,同时提供响应式的网络客户端。它的使用感觉与Spring MVC非常相似,但是添加了搭建在Reactive Streams和Reactor上的非阻塞语义机制。它们将消费请求,写入响应,举个例子来说,使用非阻塞响应式API可以让你使用背压写入HttpSocket。

\\

下面的示例代码摘自一篇博客文章,介绍了Spring 5.0 M1的响应式编程,它示例了一个控制器使用完全的非阻塞和响应式方式从远端服务器获取并传送数据。

\\
@GetMapping(\"/accounts/{id}/alerts\")\public Flux getAccountAlerts(@PathVariable Long id) {\\  return this.repository.getAccount(id)\      .flatMap(account -\u0026gt;\          this.webClient\              .perform(get(\"/alerts/{key}\

你可能感兴趣的:(Juergen Hoeller在SpringOne大会分享最新Spring 5.0发展蓝图:提供对Reactive支持)