[英]Using AWS API in order to invoke Lambda functions Asynchronously
我一直在研究有关如何调用lambda函数的AWS文档,并且遇到了多种实现方法。 Lambda调用主要是通过调用Invoke()
函数来完成的,该函数可用于同步或异步调用lambda函数。
目前,我正在通过HTTP请求(作为REST API)调用Lambda函数,但是,HTTP请求在30秒后超时,而据我所知,异步调用在15分钟后超时。
除了我已经提到的时间之外,与使用HTTP Request调用lambda相比,异步lambda调用有什么优势。 此外,在生产中调用lambda的最佳(推荐)方法是什么? 在AWS文档(SDK for Go- https : InvokeAsyncInput
)上,我看到InvokeAsyncInput
和InvokeAsyncOutput
已被描述。 因此,我想知道异步实现的实际效果如何。
Lambda实际上是关于事件驱动的计算。 这意味着Lambda总是在响应事件时被触发。 此事件可能源自各种AWS服务以及AWS CLI和SDK。
所有这些事件都调用Lambda函数,并以event
和context
对象的形式传递某种信息。 此事件的外观取决于触发lambda的服务。 您可以在本文档中找到有关上下文的更多信息。
没有真正的“最佳”方法来调用Lambda-这主要取决于您的用例-如果您要构建Web服务,请让API Gateway为您调用Lambda。 如果要在S3上处理新文件-让S3触发Lambda。 如果您只是测试Lambda函数,则可以通过CLI调用它。 如果您有需要触发Lambda函数的自定义软件,则可以使用SDK。 如果要按计划运行Lambda,请配置CloudWatch事件...
如果您需要对可用选项进行更详细的评估,请提供有关您的用例的更多信息-现在这非常广泛。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.