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

Apache flink ApacheFlink:如何更改缓冲区超时参数?,apache-flink,flink-streaming,Apache Flink,Flink Streaming,ApacheFlink缓冲任务的传出,然后将其发送到下一个任务进行处理。缓冲会影响延迟,正如我所知,即使缓冲区未填满,也会有一个缓冲超时,以便将数据发送到下一个任务 如何更改缓冲超时?我在文档中找不到任何东西 配置是每个Flink群集还是每个TaskManager?是否可以针对每个任务/操作员进行配置 据我所知,即使任务在同一个TaskManager上,Flink缓冲区也是如此。在这种情况下,它将影响同一TaskManager中的任务/操作员。我说得对吗 注意:我对这些数据/信息/问题的参考

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

  • 如何更改缓冲超时?我在文档中找不到任何东西
  • 配置是每个Flink群集还是每个TaskManager?是否可以针对每个任务/操作员进行配置
  • 据我所知,即使任务在同一个TaskManager上,Flink缓冲区也是如此。在这种情况下,它将影响同一TaskManager中的任务/操作员。我说得对吗

注意:我对这些数据/信息/问题的参考是O'Reilly的“使用Apache Flink进行流式处理”和官方文档。

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

val env: StreamExecutionEnvironment = ???
env.setBufferTimeout(50L) // configure 50 ms buffer timeout
不能为每个操作员配置它。此外,所有操作员的传出通道都被多路复用到每个TaskManager的发送方-接收方对的单个物理连接中。因此,所有操作员都将其输出写入同一缓冲区,该缓冲区需要发送到同一TaskManager

有关该参数的详细信息,请参见