美文网首页互联网通用技术
背压Back-Pressure介绍

背压Back-Pressure介绍

作者: 大军的 | 来源:发表于2017-03-19 23:32 被阅读246次

背压Back-Pressure: 是指异步消费者会向生产者订阅接收消息,然后当有新的信息可用时,消费者会通过之前订阅时提供的回调函数被再次激活调用。如果生产者发出的信息比消费者能够处理消息最大量还要多,消费者可能会被迫一直在抓消息,耗费越来越多的资源,埋下潜在的崩溃风险。为了防止这一点,需要有一种机制使消费者可以通知生产者,降低消息的生成速度。生产者可以采用多种策略来实现这一要求,这种机制称为背压。

阻塞式背压是容易实现的。例如,当生产者和消费者都是在同一个线程运行时,其中一个将阻止其他线程执行。这意味着,当消费者被执行时,生产者就不能发出任何新的信息,因此需要以自然的方式平衡输入和输出的发生。然而,在有些情况下,阻塞式背压会出现不良问题(例如当生产者有多个消费者,不是所有的人都能以同样的速度消费消息时)或根本达不到降压目的(例如当消费者和生产者在不同环境中运行)。在这些情况下,背压机制以非阻塞的方式工作就是很必要的。

相关文章

  • 背压Back-Pressure介绍

    背压Back-Pressure: 是指异步消费者会向生产者订阅接收消息,然后当有新的信息可用时,消费者会通过之前订...

  • 深入讲解RxJava响应式编程框架,背压问题的几种应对模式

    文章首发公众号:Java架构师联盟,每日更新技术好文 背压 本节首先介绍什么是背压(Backpressure)问题...

  • RxJava2--Flowable与BackPress

    转载自:Rxjava2入门教程五:Flowable背压支持——对Flowable最全面而详细的讲解 背压介绍 当上...

  • spark Streaming 背压实现(对接kafka)

    本文的介绍以DirectDStream为例进行介绍 启动sparkStreaming的背压 涉及类 RateCon...

  • 背压

    背压的含义就是指在一个典型的生产者消费者模型下,生产者生产数据的速度超过了消费者消费的速度导致的问题。 RxJS ...

  • 背压

    Back Pressure是流处理系统中,非常经典常见的问题,它是让流系统能对压力变化能够呈现良好抗压性的关键所在...

  • Flink 常见问题汇总-2(持续更新)

    21、cep怎么老化 22、cep性能调优 23、Flink的背压,介绍一下Flink的反压,你们是如何监控和发现...

  • RxJava背压

    订阅分为:同步订阅 异步订阅 同步订阅Rxjava1与Rxjava2中 同步订阅没有用到缓冲区,只要上游事件数量不...

  • RxJava背压

    RxJava 当我们在对RxJava从1.0版本升级到2.0版本的时候,我们发现RxJava2.0增加了一个被观察...

  • 背压-BackPressure

    2016-09-23 14:00 最近更新了RxJava2,看到了新增的Flowable支持背压。什么是背压呢? ...

网友评论

    本文标题:背压Back-Pressure介绍

    本文链接:https://www.haomeiwen.com/subject/ttmsnttx.html