本文在提供完整代码示例,可见 https://github.com/YunaiV/SpringBoot-Labs 的 lab-27 目录。

原创不易,给点个 Star 嘿,一起冲鸭!

1. 概述

友情提示:Reactive Programming ,翻译为反应式编程,又称为响应式编程。本文,我们统一使用响应式。不过,比较正确的叫法还是反应式。

Spring Framework 5 在 2017 年 9 月份,发布了 GA 通用版本。既然是一个新的大版本,必然带来了非常多的改进,其中比较重要的一点,就是将响应式编程带入了 Spring 生态。又或者说,将响应式编程“真正”带入了 Java 生态之中。

在此之前,相信绝大多数 Java 开发者,对响应式编程的概念是非常模糊的。甚至说,截止到目前 2019 年 11 月份,对于国内的 Java 开发者,也是知之甚少。

对于我们来说,最早看到的就是 Spring5 提供了一个新的 Web 框架,基于响应式编程的 Spring WebFlux 。至此,SpringMVC 在“干掉” Struts 之后,难道要开始进入 Spring 自己的两个 Web 框架的双雄争霸?

实际上,WebFlux 在出来的两年时间里,据艿艿所了解到的情况,鲜有项目从采用 SpringMVC 迁移到 WebFlux ,又或者新项目直接采用 WebFlux 。这又是为什么呢?

艿艿:V2EX 上还有这样一个讨论 《现在有公司在使用 Spring Boot 2.0 的 WebFlux 吗?》 。

响应式编程,对我们现有的编程方式,是一场颠覆,对于框架也是。

  • 在 Spring 提供的框架中,实际并没有全部实现好对响应式编程的支持。例如说,Spring Transaction 事务组件,在 Spring 5.2 M2 版本,才提供了支持响应式编程的 ReactiveTransactionManager 事务管理器。

  • 更不要说,Java 生态常用的框架,例如说 MyBatis、Jedis 等等,都暂未提供响应式编程的支持。

所以,WebFlux 想要能够真正普及到我们的项目中,不仅仅需要 Spring 自己体系中的框架提供对响应式编程的很好的支持,也需要 Java 生态中的框架也要做到如此。例如说:

艿艿:

艿艿连肝了几个周末,写了一篇贼长的 Spring 响应式 Web 框架 WebFlux!市面第二完整~相关推荐

  1. 艿艿连肝了几个周末,写了一篇贼长的 Spring 响应式 Web 框架 WebFlux!市面第二完整~...

    点击上方"芋道源码",选择"设为星标" 做积极的人,而不是积极废人! 源码精品专栏 原创 | Java 2020 超神之路,很肝~ 中文详细注释的开源项目 RP ...

  2. springboot中文文档_登顶 Github 的 Spring Boot 仓库!艿艿写的最肝系列

    源码精品专栏 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 My ...

  3. 硬核艿艿,新鲜出炉,直接带你弄懂 Spring Boot Jar 启动原理!

    " 摘要: 原创出处 http://www.iocoder.cn/Spring-Boot/jar/ 「芋道源码」欢迎转载,保留摘要,谢谢! 1. 概述 2. MANIFEST.MF 3. J ...

  4. 可能是第二好的 Spring OAuth 2.0 文章,艿艿端午在家写了 3 天~

    " 本文在提供完整代码示例,可见 https://github.com/YunaiV/SpringBoot-Labs 的 lab-68-spring-security-oauth 目录. 原 ...

  5. Spring Job?Quartz?XXL-Job?年轻人才做选择,艿艿全莽~

    本文在提供完整代码示例,可见 https://github.com/YunaiV/SpringBoot-Labs 的 lab-28 目录. 原创不易,给点个 Star 嘿,一起冲鸭! 1. 概述 在产 ...

  6. 《阿凡达2》首周末IMAX全球票房4880万美元;康泰生物新冠疫苗纳入第二剂次加强免疫接种 | 美通企业日报...

    美通社要闻摘要: 康泰生物新冠灭活疫苗第二剂次加强针已开放公众预约接种.<阿凡达:水之道>首周末IMAX全球票房4880万美元.丰田汽车将与Oncor合作研究电动汽车充电技术.美的楼宇科技 ...

  7. 对着Java性能调优,艿艿也很无奈···

    Java性能调优都是老生常谈的问题,特别当"糙快猛"的开发模式大行其道时,随着系统访问量的增加.代码的臃肿,各种性能问题便会层出不穷. 比如,下面这些典型的性能问题,你肯定或多或少 ...

  8. 2.5w字长文爆肝 C++动态内存与智能指针一篇搞懂!太顶了!!!

    动态内存与智能指针 1.动态内存与智能指针 2.shared_ptr类 2.1.make_shared函数 2.2.shared_ptr的拷贝和赋值 2.3.shared_ptr自动销毁所管理的对象 ...

  9. 周末写的数据库文章又被官方推荐了!

    近期,数字化转型在业界提的很火热,数字经济规划作为单独篇章出现在了最新的十四五规划中,足以说明国家对数字经济的重视.那么对于我们数据人来说,这无疑是一个非常好的"风口",可以让我们 ...

最新文章

  1. 共享经济时代,中小企业该如何逆风翻盘?
  2. django-pagination 样式修改
  3. 概率编程库Pymc3案例之神经网络(批量训练)
  4. BZOJ-2115-Xor-WC2011
  5. Android NDK学习笔记2:数组
  6. 高性能 php api 开发,ThinkPHP 3.2 性能优化,实现高性能API开发
  7. Linux下的tty和pts:PTS之间标准输入输出的交互
  8. YVU420PackedSemiPlanar32m4ka与YUV420PackedSemiPlanar64x32Tile2m8ka
  9. 在DOS中使用系统还原工具
  10. python计算无穷级数求和,无穷级数求和的积分审敛法
  11. Java 对象布局、大小工具 jar包工具类jol
  12. 图片识别不了小程序怎么办_【信息素养】教你怎么用微信小程序进行文字识别...
  13. 服务器集群虚拟化区别,服务器集群与虚拟化
  14. Endnote快速上手
  15. vscode常用插件-Auto Close Tag
  16. android webview 播放视频总结,Android WebView 播放视频总结~
  17. hdu4417:线段树单点更新区间求和,离线 Super Mario
  18. php artisan passport,Laravel Passport
  19. 大数据平台接入API数据
  20. python字符串索引

热门文章

  1. 您能看出这个Double Check里的问题吗?
  2. 从hello server开始,到hello client结束
  3. springBoot ajax 报错 Circular view path [xx: would dispatch...
  4. (十六)spring cloud微服务分布式云架构-集成项目简介
  5. 同步文件,不需要密码
  6. 企业关系网络分析,大数据时代淘金利器
  7. 一个类实现多个接口的demo
  8. 虚拟机VMware 9安装苹果MAC OSX 10.8图文教程
  9. 突破Outlook2003附件格式限制
  10. 【转】[你必须知道的.NET]第二十一回:认识全面的null