介绍
英文好的同学还是建议直接看官方的文档。
Spring WebFlux 是 Spring Framework 5.0中引入的新的响应式web框架。与Spring MVC不同,它不需要Servlet API,是完全异步且非阻塞的,并且通过Reactor项目实现了Reactive Streams规范。
Spring WebFlux 用于创建基于事件循环执行模型的完全异步且非阻塞的应用程序。
Reactive Streams是一套用于构建高吞吐量、低延迟应用的规范。而Reactor项目是基于这套规范的实现,它是一个完全非阻塞的基础,且支持背压。Spring WebFlux基于Reactor实现了完全异步非阻塞的一套web框架,是一套响应式堆栈。
【spring-webmvc + Servlet + Tomcat】命令式的、同步阻塞的
【spring-webflux + Reactor + Netty】响应式的、异步非阻塞的
Spring MVC 还是 WebFlux?
官网上给的一副图片和我们选型的时候需要考虑的一些建议
个人理解主要还是看具体的业务场景和自己研发团队内部技术栈,因为大部分的场景都是阻塞的模式,我们也已经习惯了这种模式,转换到响应式编程学习成本都是我们需要考虑的。
Spring WebFlux Framework
我们写一个简单的程序来体验一下,我们可以直接在Idea中直接新建WebFlux程序.
Spring WebFlux有两种风格:功能性和基于注释的。基于注释的与Spring MVC非常相近
启动应用在浏览器里面直接访问就可以了, 还是比较简单的
最后
好了,本文就介绍到这里,后面在详细介绍一下它的一些核心原理和特性。
官网的地址:spring.io/projects/sp…