首页 > 编程语言 > 详细

SpringMVC的孪生兄弟WebFlux

时间:2019-06-05 23:54:28      阅读:428      评论:0      收藏:0      [点我收藏+]

一、入门文字介绍

官方口水话简短翻译:

  Spring WebFlux是一个非阻塞的Web框架,用于利用多核,短时间可一处理大量并发连接。

非阻塞式

  在servlet3.1提供了非阻塞的API,WebFlux为之有自己的一套手段,

  使用非阻塞的方式可以利用较小的线程或硬件资源处理并发

函数式编程端点

  Spring5必须配备java8,函数式编程就是java8重要的特点之一,

  WebFlux支持函数式编程来定义路由端点处理请求。

二、入门小Demo Test

  创建一个Spring Boot项目,版本要求2.0以上,需要下面的依赖,Spring Reactive Web  替代了Web依赖

    技术分享图片

  看看我们的处理器:Controller

    抽一个方法出来,待会儿会使用到,这个方法假如就是我们一个比较耗时的逻辑操作

      技术分享图片

    然后看我们的处理器 @Slf4j   @RestController

      技术分享图片

      我们定义了两个处理器,一个就是普通的处理器,一个是使用了WebFlux的处理器,

      然后我们观察我们的控制台日志情况:

      技术分享图片 ...技术分享图片

    • 有没有发现什么一样,当然我们的页面都是一样的,需要在五秒后才会有结果,但是你观察控制台

    • 发现下面那个打印的时间间隔很短有没有,并没有像上面那个一样等待五秒才打印

    • 下面使用WebFlux的请求的耗时操作没有阻塞处理器的执行,也就是说耗时没能影响到处理器,

    • 这样的话,处理器就可以同时接很多请求了,反正也不会堵塞,

    • 虽然对于请求的响应页面数据来看,没有任何差别,但是对于处理器来说,其吞吐量将会大大提高

 

SpringMVC的孪生兄弟WebFlux

原文:https://www.cnblogs.com/msi-chen/p/10982604.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!