reactor

背压:流量控制  -消费者往--生产者推流量

 

 

 

Blocking模式的问题(thread per request)
一个Thread可能占据1M内存( 64bit JVM )
Context switch 开销大
需要依靠同步工具互斥
涉及到多状态更新的代码逻辑不易维护
JDK 异步API 的限制
Future的不足
调用get()强迫变回同步模式
多个异步任务协作过于困难
Callback hell
代码难以阅读
改变顺序特别困难
难以表达并行的语义
 
 
 
Project Reactor 特性
•实现了reactive-stream规范
•作为Spring 5 Reactor模式的默认实现
•使用JDK8 API
•支持背压
•Composability and readability
 
Reactive编程关键点
Synchronous vs Asynchronous
Assembly time vs subscription time
Pull vs Push
Hot vs Cold
 

 

 

 

 

posted @ 2021-06-27 22:41  悬崖听风098  阅读(238)  评论(0编辑  收藏  举报