当前位置: 首页 > 知识库问答 >
问题:

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

萧飞
2023-03-14

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

  • 如何更改缓冲超时?我在留档中找不到任何东西。
  • 配置是每个Flink集群还是每个TaskManager?它可以按任务/运算符配置吗?
  • 据我所知,即使任务在同一个TaskManager上,Flink缓冲区也是如此。在这种情况下,它会影响位于同一个TaskManager中的任务/运算符。我说得对吗?

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

共有1个答案

越源
2023-03-14

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

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

不能按操作员配置。此外,每个TaskManager的发送方-接收方对,所有操作员的传出通道都被多路复用到单个物理连接中。因此,所有操作员都将其输出写入同一个缓冲区,需要将其发送到同一个TaskManager。

该参数在留档中有更详细的描述。

 类似资料:
  • 如何更改仍为3M的缓冲区 当前启动命令: ffmpeg-f dshow-i video=“屏幕捕获录像机”-vcodec libx264-预设:v ultrafast-过滤器:v“crop=480:270:0:0”-vf tpad=start_duration=30-r 30-g 60-keyint_min 60-sc_阈值0-b:v 1G-最大速率2500k-bufsize 1G-rtbufsi

  • 我不小心安装了3.0.0版,我的大多数文件自然产生了大量错误。现在我想把它带回2.6.1。我已经下载了2.6.1并安装了,但是当我做时,它仍然显示,这是错误的。 有办法将版本设置为2.6.1还是有办法卸载3.0.0?

  • 问题内容: 在编写用于OpenGL库的Matrix类时,我遇到了一个问题,即使用Java数组还是使用Buffer策略存储数据(JOGL为Matrix操作提供直接缓冲区复制)。为了对此进行分析,我编写了一个小型性能测试程序,该程序比较了Arrays vs Buffers和Direct Buffers上循环和批量操作的相对速度。 我想在这里与您分享我的结果(因为我发现它们很有趣)。请随时发表评论和/或

  • 问题内容: 所以我有这段代码: 我这样称呼它: 如何将该文件保存到服务器并用作图像,或者仅将其发送到视图并在标签中显示? 我试图做这样的事情: 但这无法读取已保存的文件,并且文件也未保存在任何地方。 问题答案: 好的,这挽救了我的生命:https : //youtu.be/pXHOF4GWuZQ。这是最终代码:

  • 嗨,为了保持向后兼容性,可以更改协议缓冲区中字段的数据类型吗。例如 旧消息 所以基本上我没有更改字段的标签号,也没有重命名它,但我更改了数据类型。那么这是向后兼容的吗?如果一个应用程序获得了一个用以前的模式创建的旧proto对象,它可以通过这个新模式创建的对象进行解析吗?

  • 我试图找到一个解决方案,如何将存储在数据库中的日期时间转换为yyyyy-mm-dd HH-mm-ss,并给它时区美国/Los_Angeles。 如果我更改时区,Carbon将自动从时间中减去7小时,这就是将时间从UTC更改为PST时发生的情况,但我的DB中的时间设置为PST时间。例如,我希望时间是今天上午10点,但如果我改变时区,碳将转换为今天凌晨3点。 如果时区改为PST,但仍然保持上午10点的