与apache flink的同步响应

omjgkv6w  于 2021-06-21  发布在  Flink
关注(0)|答案(1)|浏览(328)

到目前为止,我在网上找不到任何关于我的问题的答案,所以我觉得在这里问这个问题很好。我知道apache flink在设计上是异步的,但我想知道是否有任何项目或设计,其目的是用flink构建一个同步管道。
对于同步响应,我的意思是有一个api端点,我将数据发送到该端点,处理由flink完成,并且处理的结果在api调用的应答体中返回(以任何形式),例如200
我已经研究了rabbitmqrpc,但未能成功实现它。我很乐意接受任何指导或建议。谢谢,乔恩

zed5wv10

zed5wv101#

我脑子里最清楚的一件事似乎是把Flink·约伯和 TcpSource 在apache bahir中提供。您可以有一个http端点,它将接收一些数据并在指定的地址上调用flink,然后处理它并创建响应。问题是只有 TcpSource 在bahir中可用,这意味着您需要创建大部分代码(整个 Sink )你一个人。
还有其他方法可以做到这一点(比如尝试为每条消息分配一个id,然后等待具有该id的消息到达kafka并将其作为响应发送,但这似乎很麻烦而且容易出错)
另一种方法是使响应异步(我知道这个问题特别提到同步响应,但只是为了完整起见)
不过,我想说的是,这对我来说似乎是对flink的滥用。flink的主要设计目的是允许在多个节点上进行实时计算,但这里似乎没有这种情况。我建议研究不同的流媒体库,它们更轻量级,更容易编写,并且可以提供您想要的现成功能。例如,您可能想看看akka streams。

相关问题