码迷,mamicode.com
首页 > 编程语言 > 详细

Spring Boot webflux介绍

时间:2020-03-09 15:07:33      阅读:64      评论:0      收藏:0      [点我收藏+]

标签:容器   项目   ber   client   模型   基础   stream   block   image   

1、同步阻塞IO模型

当容器中只有三个线程接收请求,当有四个请求过来的时候,就会Block住,得不到及时的响应

 

2、异步非阻塞式IO模型

Spring Boot webflux是异步非阻塞式IO模型,容器线程将耗时的任务(IO密集型任务)交给work线程来处理

技术图片

 

 

3、webflux应用场景

技术图片

 

 

 

4、webflux与springmvc异同点

技术图片

 

5、webflux使用建议

1)、如果当前项目比较稳定,没必要切换。如果要切换最好切换整套技术栈

2)、如果只是个人对新技术感兴趣,可以在一些简单小型项目中使用研究,或者使用WebClient尝试

3)、大团队慎重考虑引入这门技术,引入前跟团队成员一起做好评估工作。

 

6、webflux技术依赖

Reactive Streams: 反应式编程标准和规范  -> Reactor: 基于reactive Streams的反应式编程框架 -> WebFlux: 以Reactor为基础实现Web领域的反应式编程框架

 

7、Reactive Streams

一套基于jvm面向流式类库的标准和规范

1) 具有处理无限数量数据的能力

2) 按序处理数据

3) 异步非阻塞的传递数据

4) 必须实现非阻塞的背压。(数据源产生数据的速度超过消费端消费数据的速度,消费端可以通知数据源它所能消费的数据量,让数据源发送一定量的数据给到它,或者通知数据源取消对其发送数据来降低消费压力)

 

8、api规范组件

publisher: 数据发布者

subscriber: 数据订阅者

subscription: 订阅型号

processor: 处理器(包含了发布者和订阅者的混合体)

 

Spring Boot webflux介绍

标签:容器   项目   ber   client   模型   基础   stream   block   image   

原文地址:https://www.cnblogs.com/linlf03/p/12447824.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!