gpt4 book ai didi

apache-flink - Apache Flink : Enrich stream with data from external/blocking call

转载 作者:行者123 更新时间:2023-12-04 20:34:46 24 4
gpt4 key购买 nike

在我的应用程序中,我想丰富无限的事件流。流本身通过对 Id 进行散列来并行化。对于每个事件,可能会调用外部源(例如 REST、DB)。这个调用本质上是阻塞的。必须保持一个流分区内的事件顺序。

我的想法是创建一个 RichMapFunction,它设置连接,然后轮询每个事件的外部源。阻塞调用通常不需要很长时间,但在最坏的情况下,服务可能会关闭。

理论上,这是可行的,但我觉得这样做不太好,因为我不知道如果流中有一些阻塞操作,Flink 会如何 react 。如果您有很多并行流阻塞会发生什么,即我的线程用完了吗?或者在流并行化的点上行为如何向上流?

其他人是否可能有类似的问题以及我的问题的答案或一些解决方法的想法?

最佳答案

RichMapFunction是一个很好的起点,但更喜欢 RichAsyncFunction这是异步的,不会阻止您的处理!

小心:
1-您的数据库访问但也是异步的
2- 您的事件顺序可能会发生变化(根据使用的模式)

更多详情:https://ci.apache.org/projects/flink/flink-docs-release-1.2/dev/stream/asyncio.html

希望能帮助到你

关于apache-flink - Apache Flink : Enrich stream with data from external/blocking call,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37854416/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com