我可以异步通过Amazon API网关启动长期运行的AWS Lambda流程吗?

san*_*ity 4 amazon-web-services aws-lambda aws-api-gateway

我需要启动一个长期运行的AWS Lambda作业(几分钟),将其输出写入S3.它将用Java编写(实际上是Kotlin,但这不重要).

我正在调查Amazon API Gateway作为此AWS Lambda作业与iOS移动应用程序之间的接口,该应用程序将与之通信.

是否可以直接从API网关或另一个Lambda函数异步调用这些长时间运行的Lambda进程?

ata*_*lor 5

我认为您不能直接通过API网关异步调用Lambda,但您可以通过API从另一个lambda调用lambda.在Java中,你使用AWSLambdaClient.invoke()InvocationTypeEvent.

小心使用Lambda进行长时间运行的作业:Lambda调用有300秒的硬限制.我建议在长期运行后端进程的持久资源(如EC2)中使用Lambda调用代码.