我想知道有没有解决办法restapi(或多个restapi)是否直接存在于flink程序中?如果存在这样的解决方案。您认为最好先将处理过的数据从flink推送到kafka之类的消息代理,然后再从kafka调用restapi推送吗?或者我也可以直接从flink程序调用RESTAPI?
zsbz8rwp1#
用户函数(例如richflatmapfunction或keyedprocessfunction)中的代码可以执行任何您想要的操作,包括对外部服务进行rest调用。但是,您应该避免在用户函数中阻塞i/o,因为在用户函数中阻塞操作符时,检查点屏障无法通过操作符。解决这个问题的一个好方法是将flink的异步i/oapi与提供异步客户机接口的http库结合使用。
1条答案
按热度按时间zsbz8rwp1#
用户函数(例如richflatmapfunction或keyedprocessfunction)中的代码可以执行任何您想要的操作,包括对外部服务进行rest调用。但是,您应该避免在用户函数中阻塞i/o,因为在用户函数中阻塞操作符时,检查点屏障无法通过操作符。
解决这个问题的一个好方法是将flink的异步i/oapi与提供异步客户机接口的http库结合使用。