扫一扫加入大数据公众号和技术交流群,了解更多大数据技术,还有免费资料等你哦
简介
流处理系统必须能优雅地处理反压(backpressure)问题,因为实时流处理必然会遇到这样的场景:短时负载高峰导致系统接收数据的速率远高于它处理数据的速率。反压如果不能得到正确的处理,可能会导致资源耗尽甚至系统崩溃,目前主流的流处理系统Storm/Spark Streaming/Flink 都已经提供了反压机制,不过其实现各不相同。spark的反压机制参考我的上篇博客:https://blog.csdn.net/aA518189/article/details/86175816
背压指标计算
介绍反压之前我们先把背压指标计算的原理介绍一下,明白背压指标背后的计算逻辑后,再去看反压机制或许更好理解。如果您看到任务的某个算子出现反压警告(例如High
),则表示它正在产生的数据快于下游操作员可以消耗的速度,沿着Flink拓扑找到最后一个背压为 “HIGH” 的算子的下游算子就是引起