【发布时间】:2021-10-18 13:24:29
【问题描述】:
使用远程函数的 Flink Stateful Functions 涉及 Flink StateFun 集群将计算任务的执行移交给通过某种 FaaS 机制部署的远程工作人员,例如 AWS Lambda。
AWS lambdas 受到扩展限制(它们可以扩展多快以及达到什么限制),如 in the docs 所述。请注意,Lambda 并发配额适用于账户,而不适用于每个单独的 lambda 函数。
在大规模流式系统中,特别是如果单个 Lambda 调用执行的工作相对于该期间数据流中遇到的键的数量而言相对较长,可以想象 Flink StateFun 集群可能会遇到 Lambda节流事件。换句话说,StateFun 集群在尝试通过 API 网关调用 Lambda 时会收到来自 API 网关的 429 错误,因为同时调用 Lambda 的数量已达到限制。
Flink 如何处理这个问题?它是否实现了退避/重试?如何处理数据流中事件的排序?
【问题讨论】:
标签: amazon-web-services aws-lambda apache-flink flink-streaming flink-statefun