当前位置: 首页 > news >正文

reactor中的并发

1. reactor中的并发有两种方式

        1.1 flatmap,底层是多线程并发处理。在reactor的演讲中,flatmap对于io类型的并发效果较好.

        flamap有两个参数: int concurrency, int prefetch。分别代表并发的线程数和缓存大小

        注意凡是参数中有prefetch的,都表示这个operator有对应大小的缓存。

        1.2 parallel,这种operator对cpu并发的效果较好

2. groupyby的优化

        因为groupby的缓存可能会用完导致hang住。因此这里有如下的可以考虑的优化方法

1. 提高groupby的缓存数量

2. 增加flatmap中的concurrency和prefetch值

List<String> data = List.of("alpha", "air", "aim", "beta", "cat", "ball", "apple", "bat", "dog", "ace");Flux.fromIterable(data).log().doOnComplete(()->{ System.out.println("end");}).groupBy(d -> d.charAt(0),5).flatMap(g -> g.map(String::valueOf).startWith(String.valueOf(g.key())).map(o -> {System.out.println(o);return o;}),2,1).subscribe();

3. share和publish两个方法可以将冷流变成热流

4. 相对应的cache/buffer/onBackpressureBuffer等操作符因为存在了cache,因此将热流变成了冷流。

可学习文章:

flux中的缓存-CSDN博客

http://www.lryc.cn/news/517974.html

相关文章:

  • 太速科技-418-基于AD9361 +ZYNQ7020 的软件无线电 SDR 套件
  • 监控易:一体化智能运维的扩展性优势深度解析
  • 朴素贝叶斯算法:从生活到数学的完整解析
  • Echarts的认识和基本用法
  • Linux文件系统的安全保障---Overlayroot!
  • 【Linux 之一 】Linux常用命令汇总
  • 【线性代数】通俗理解特征向量与特征值
  • Unity 热更新基础知识
  • 安全基础-互联网技术基础
  • 深度学习从入门到实战——卷积神经网络原理解析及其应用
  • React快速上手到项目实战总篇
  • HTMLHTML5革命:构建现代网页的终极指南 - 0. 课程目录设计
  • ffplay 命令行 从视频第N帧开始读取 ffmpeg 命令行 提取第N帧图片
  • Spring AMQP-保证消费者消息的可靠性
  • Linux(Centos 7.6)命令详解:mkdir
  • 在K8S上部署OceanBase的最佳实践
  • IDEA中Maven依赖包导入失败报红的潜在原因
  • 【计算机网络】课程 实验五 静态路由配置
  • 基于单片机的数字气压计设计
  • 【Docker项目实战】使用Docker部署Typemill轻量级平面文件CMS
  • react ts 定义基本类型,组件通过ref调用时类型提示
  • 二十三种设计模式-原型模式
  • 提升汽车金融租赁系统的效率与风险管理策略探讨
  • Spring Framework 5.3.x源码构建 (jdk-1.8, gradle 7.5.1, idea2024.3)
  • leetcode 2241. 设计一个 ATM 机器 中等
  • IO模型与NIO基础
  • 上门按摩系统架构与功能分析
  • ubuntu安装ssh9.2
  • linux wsl配置 redis远程连接
  • JVM 优化指南