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

网站一般费用淘宝关键词怎么选取

网站一般费用,淘宝关键词怎么选取,建设工程交易平台,免费开发app平台下载这段文字详细解释了 Reactor 中 热发布者(Hot Publisher) 和 冷发布者(Cold Publisher) 的区别,并通过示例展示了它们的行为差异。以下是对其含义的总结和解释: 1. 冷发布者(Cold Publisher&…

这段文字详细解释了 Reactor 中 热发布者(Hot Publisher)冷发布者(Cold Publisher) 的区别,并通过示例展示了它们的行为差异。以下是对其含义的总结和解释:


1. 冷发布者(Cold Publisher)

  • 定义:冷发布者在订阅时才开始生成数据。如果没有订阅者,数据不会被生成。

  • 行为:每个订阅者都会独立地触发数据的生成和处理流程。

  • 类比:就像 HTTP 请求,每个订阅者都会触发一次新的请求,即使之前已经有人订阅过。

  • 示例

    Flux<String> source = Flux.fromIterable(Arrays.asList("blue", "green", "orange", "purple")).map(String::toUpperCase);
    source.subscribe(d -> System.out.println("Subscriber 1: " + d));
    source.subscribe(d -> System.out.println("Subscriber 2: " + d));
    

    输出结果:

    Subscriber 1: BLUE
    Subscriber 1: GREEN
    Subscriber 1: ORANGE
    Subscriber 1: PURPLE
    Subscriber 2: BLUE
    Subscriber 2: GREEN
    Subscriber 2: ORANGE
    Subscriber 2: PURPLE
    

    每个订阅者都会接收到所有数据,因为每个订阅都会重新执行整个操作链 。

在这里插入图片描述


2. 热发布者(Hot Publisher)

  • 定义:热发布者在创建时就开始发布数据,不依赖于订阅者的数量。即使没有订阅者,数据也会持续发布。

  • 行为:订阅者只会看到从订阅开始之后发布的数据。如果在订阅之前已经发布了数据,新订阅者不会看到这些数据。

  • 类比:就像一个股票价格发布者,一旦价格发生变化,所有订阅者都会收到更新,但新订阅者只会看到之后的价格变化。

  • 示例

    Sinks.Many<String> hotSource = Sinks.unsafe().many().multicast().directBestEffort();
    Flux<String> hotFlux = hotSource.asFlux().map(String::toUpperCase);
    hotFlux.subscribe(d -> System.out.println("Subscriber 1 to Hot Source: " + d));
    hotSource.emitNext("blue", FAIL_FAST); 
    hotSource.tryEmitNext("green").orThrow(); 
    hotFlux.subscribe(d -> System.out.println("Subscriber 2 to Hot Source: " + d));
    hotSource.emitNext("orange", FAIL_FAST); 
    hotSource.tryEmitNext("purple").orThrow(); 
    

    输出结果:

    Subscriber 1 to Hot Source: BLUE
    Subscriber 1 to Hot Source: GREEN
    Subscriber 1 to Hot Source: ORANGE
    Subscriber 1 to Hot Source: PURPLE
    Subscriber 2 to Hot Source: ORANGE
    Subscriber 2 to Hot Source: PURPLE
    

    第二个订阅者只看到 “orange” 和 “purple”,因为它们是在第一个订阅者之后发布的 。

在这里插入图片描述


3. 如何将冷发布者转换为热发布者

  • share():将冷发布者转换为热发布者,多个订阅者可以共享同一个发布者。第一个订阅者触发发布,后续订阅者共享数据。
  • replay(n):将冷发布者转换为热发布者,并保留最近的 n 个元素,新订阅者可以接收到这些元素。
  • Sinks.Many:通过 Sinks.Many 手动控制数据的发布,可以模拟热发布者的行为 。

4. 如何将热发布者转换为冷发布者

  • defer():将热发布者(如 just)转换为冷发布者,延迟执行,直到有订阅者订阅时才生成数据 。

5. 总结

  • 冷发布者:每个订阅者都会独立地触发数据的生成和处理。
  • 热发布者:数据在创建时就开始发布,订阅者只会看到从订阅开始之后的数据。
  • 转换方法
    • 冷 → 热:share()replay()Sinks.Many
    • 热 → 冷:defer()

这种区分对于构建高效、可扩展的响应式系统非常重要,尤其是在处理大量并发请求或实时数据流时 。

http://www.dtcms.com/wzjs/246355.html

相关文章:

  • 用wordpress做答题网站优化官网咨询
  • 响应式中文网站欣赏百度关键词排名推广话术
  • 南通网站建设案例做一个官网要多少钱
  • html做网站收藏按钮中国seo第一人
  • 如何做建筑一体化的网站网站推广应该坚持什么策略
  • 怎么做网站上的模拟动画提供seo服务
  • 采集网站后台数据北京正规seo搜索引擎优化价格
  • 贵阳市做网站电话二维码推广赚佣金平台
  • 用html制作个人网站源代码怎样弄一个自己的平台
  • b2c跨境电子商务平台有哪些化工网站关键词优化
  • 排版设计英文武汉网站建设方案优化
  • 湛江网站建设开发百度移动应用
  • 房地产网站建设权重查询入口
  • 做网站用什么域名比较好前端性能优化
  • 新闻网站建设研究现状网站排名提升软件
  • 网站开发命名规则百度开户流程
  • aspnet通讯录网站开发seo网站推广优化就找微源优化
  • 网站建设在开封找谁做磁力狗最佳搜索引擎
  • 旅游网站案例分析关键词排名怎么做上去
  • 做暧暧暖免费观看网站搜索网
  • 免费小程序网站沪深300指数
  • 网站建设时间计划营销推广方式都有哪些
  • 个人作品网站链接怎么做网络推广平台哪家公司最好
  • 佛山外贸企业网站建设杭州百度seo
  • 豪华跑车网站建设手机游戏性能优化软件
  • 上海市网站信息无障碍建设培训机构
  • 近期国内外重大新闻10条seo索引擎优化
  • 国家疫情防控最新政策新十条东莞网络推广优化排名
  • 网站建设私人合同范本省好多会员app
  • 潍坊网站建设公司电话拉人头最暴利的app