Webflux 线程模型理解

💡 原文中文,约3800字,阅读约需9分钟。
📝

内容提要

Webflux线程模型是使用Webflux/Reactor编程的重要概念。Reactive Streams规范定义了发布者和订阅者之间的交互逻辑,解决了异步流式处理中的背压问题。Reactor提供了subscribeOn和publishOn方法来控制request和onNext方法的执行线程。同时使用subscribeOn和publishOn时,subscribeOn的作用会穿过publishOn。

🎯

关键要点

  • Webflux线程模型是Webflux/Reactor编程的重要概念。
  • Reactive Streams规范定义了发布者和订阅者之间的交互逻辑,解决了异步流式处理中的背压问题。
  • Subscriber通过Subscription接口向Publisher请求数据,Subscription简化了Subscriber与Publisher之间的关系。
  • Reactive Streams有Cold和Hot两种模式,Cold模式下每个Subscriber有独立数据流,Hot模式下数据是共享的。
  • Reactor与Reactive Streams规范的结合使得流式代码的每个操作符既是Publisher又是Subscriber。
  • 线程调度在Webflux中至关重要,使用subscribeOn和publishOn方法可以控制request和onNext方法的执行线程。
  • subscribeOn影响request方法的执行线程,publishOn影响onNext方法的执行线程。
  • 如果同时使用subscribeOn和publishOn,subscribeOn的作用会穿过publishOn。
🏷️

标签

➡️

继续阅读