Apache Flink:如何更改缓冲区超时参数?

Apache Flink: How to change the buffer timeout parameter?

Apache Flink 缓冲任务的传出,然后将其发送给下一个任务进行处理。缓冲会影响延迟,据我所知,即使缓冲区未满,缓冲也会超时将数据发送到下一个任务。

注意:我对此 data/information/questions 的参考是 O'Reilly 的 "Streaming Processing with Apache Flink" 和官方文档。

缓冲区超时是一个作业级参数,通过StreamExecutionEnvironment配置。

val env: StreamExecutionEnvironment = ???
env.setBufferTimeout(50L) // configure 50 ms buffer timeout

无法为每个运营商配置。此外,所有操作员的传出通道都被多路复用到每对 TaskManager 的发送方-接收方的单个物理连接中。所以所有操作员都将他们的输出写入同一个缓冲区,它需要被传送到同一个 TaskManager。

参数在 documentation 中有更详细的描述。