flink - 反压

http://wuchong.me/blog/2016/04/26/flink-internals-how-to-handle-backpressure/

https://ci.apache.org/projects/flink/flink-docs-master/internals/back_pressure_monitoring.html

 

反压之所以会是需要的,因为当源端流量过大,而消费端无法及时消费时,可能会导致job crash;比如内存耗尽等;

其实通过合理控制资源的使用,JStorm也可以做到自然反压的

spout pending队列是可以配置的,只有当record被ack,才会发送新的record,也可以达到流控的目的

Flink没有实现特别的反压逻辑,是因为对于flink而言,每层的buffer是可控的,是一个固定大小的bufferpool,当buffer用完时,发送端自然会停止发送,达到限流的目的,从而防止资源耗尽

posted on 2016-08-03 15:33  fxjwind  阅读(779)  评论(0编辑  收藏  举报